<!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.2.1-SNAPSHOT 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.2.1-SNAPSHOT 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#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><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/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><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/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/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><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/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/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/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/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/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/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/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/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/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>&nbsp;</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/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/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/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/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/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>
</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><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/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/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/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/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/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 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 parsing the payload into values 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#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/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/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><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>
