blob: 129d0087c2e8343b97074906011a2868151cc6ba [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" />
<meta name="author" content="Cloudera" />
<title>Apache Kudu - Command Hierarchy</title>
<!-- Bootstrap core CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"
integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7"
crossorigin="anonymous">
<!-- Custom styles for this template -->
<link href="/css/kudu.css" rel="stylesheet"/>
<link href="/css/asciidoc.css" rel="stylesheet"/>
<link rel="shortcut icon" href="/img/logo-favicon.ico" />
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" />
<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="kudu-site container-fluid">
<!-- Static navbar -->
<nav class="navbar navbar-default">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="logo" href="/"><img
src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png"
srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x"
alt="Apache Kudu"/></a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav navbar-right">
<li >
<a href="/">Home</a>
</li>
<li >
<a href="/overview.html">Overview</a>
</li>
<li class="active">
<a href="/docs/">Documentation</a>
</li>
<li >
<a href="/releases/">Releases</a>
</li>
<li >
<a href="/blog/">Blog</a>
</li>
<!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here
that doesn't also appear elsewhere on the site. -->
<li class="dropdown">
<a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a>
<ul class="dropdown-menu">
<li class="dropdown-header">GET IN TOUCH</li>
<li><a class="icon email" href="/community.html">Mailing Lists</a></li>
<li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li>
<li role="separator" class="divider"></li>
<li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li>
<li><a href="/committers.html">Project Committers</a></li>
<!--<li><a href="/roadmap.html">Roadmap</a></li>-->
<li><a href="/community.html#contributions">How to Contribute</a></li>
<li role="separator" class="divider"></li>
<li class="dropdown-header">DEVELOPER RESOURCES</li>
<li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li>
<li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li>
<li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li>
<li role="separator" class="divider"></li>
<li class="dropdown-header">SOCIAL MEDIA</li>
<li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li>
<li><a href="https://www.reddit.com/r/kudu/">Reddit</a></li>
<li role="separator" class="divider"></li>
<li class="dropdown-header">APACHE SOFTWARE FOUNDATION</li>
<li><a href="https://www.apache.org/security/" target="_blank">Security</a></li>
<li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank">Sponsorship</a></li>
<li><a href="https://www.apache.org/foundation/thanks.html" target="_blank">Thanks</a></li>
<li><a href="https://www.apache.org/licenses/" target="_blank">License</a></li>
</ul>
</li>
<li >
<a href="/faq.html">FAQ</a>
</li>
</ul><!-- /.nav -->
</div><!-- /#navbar -->
</div><!-- /.container-fluid -->
</nav>
<!--
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<div class="container">
<div class="row">
<div class="col-md-9">
<h1>Command Hierarchy</h1>
<div id="preamble">
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="#cluster-rebalance">rebalance</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#diagnose">diagnose</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#diagnose-parse_stacks">parse_stacks</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#fs">fs</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#fs-check">check</a></p>
</li>
<li>
<p><a href="#fs-format">format</a></p>
</li>
<li>
<p><a href="#fs-list">list</a></p>
</li>
<li>
<p><a href="#fs-update_dirs">update_dirs</a></p>
</li>
<li>
<p><a href="#fs-dump">dump</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#dump-block">block</a></p>
</li>
<li>
<p><a href="#dump-cfile">cfile</a></p>
</li>
<li>
<p><a href="#dump-tree">tree</a></p>
</li>
<li>
<p><a href="#dump-uuid">uuid</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#hms">hms</a></p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#hms-check">check</a></p>
</li>
<li>
<p><a href="#hms-downgrade">downgrade</a></p>
</li>
<li>
<p><a href="#hms-fix">fix</a></p>
</li>
<li>
<p><a href="#hms-list">list</a></p>
</li>
<li>
<p><a href="#hms-precheck">precheck</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#local_replica">local_replica</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#local_replica-copy_from_remote">copy_from_remote</a></p>
</li>
<li>
<p><a href="#local_replica-data_size">data_size</a></p>
</li>
<li>
<p><a href="#local_replica-delete">delete</a></p>
</li>
<li>
<p><a href="#local_replica-list">list</a></p>
</li>
<li>
<p><a href="#local_replica-cmeta">cmeta</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#cmeta-print_replica_uuids">print_replica_uuids</a></p>
</li>
<li>
<p><a href="#cmeta-rewrite_raft_config">rewrite_raft_config</a></p>
</li>
<li>
<p><a href="#cmeta-set_term">set_term</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#local_replica-dump">dump</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#dump-block_ids">block_ids</a></p>
</li>
<li>
<p><a href="#dump-data_dirs">data_dirs</a></p>
</li>
<li>
<p><a href="#dump-meta">meta</a></p>
</li>
<li>
<p><a href="#dump-rowset">rowset</a></p>
</li>
<li>
<p><a href="#dump-wals">wals</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#master">master</a></p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#master-dump_memtrackers">dump_memtrackers</a></p>
</li>
<li>
<p><a href="#master-get_flags">get_flags</a></p>
</li>
<li>
<p><a href="#master-run">run</a></p>
</li>
<li>
<p><a href="#master-set_flag">set_flag</a></p>
</li>
<li>
<p><a href="#master-status">status</a></p>
</li>
<li>
<p><a href="#master-timestamp">timestamp</a></p>
</li>
<li>
<p><a href="#master-list">list</a></p>
</li>
<li>
<p><a href="#master-authz_cache">authz_cache</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#authz_cache-reset">reset</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#pbc">pbc</a></p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#pbc-dump">dump</a></p>
</li>
<li>
<p><a href="#pbc-edit">edit</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#perf">perf</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#perf-loadgen">loadgen</a></p>
</li>
<li>
<p><a href="#perf-table_scan">table_scan</a></p>
</li>
<li>
<p><a href="#perf-tablet_scan">tablet_scan</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#remote_replica">remote_replica</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#remote_replica-check">check</a></p>
</li>
<li>
<p><a href="#remote_replica-copy">copy</a></p>
</li>
<li>
<p><a href="#remote_replica-delete">delete</a></p>
</li>
<li>
<p><a href="#remote_replica-dump">dump</a></p>
</li>
<li>
<p><a href="#remote_replica-list">list</a></p>
</li>
<li>
<p><a href="#remote_replica-unsafe_change_config">unsafe_change_config</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#table">table</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#table-add_range_partition">add_range_partition</a></p>
</li>
<li>
<p><a href="#table-column_remove_default">column_remove_default</a></p>
</li>
<li>
<p><a href="#table-column_set_block_size">column_set_block_size</a></p>
</li>
<li>
<p><a href="#table-column_set_compression">column_set_compression</a></p>
</li>
<li>
<p><a href="#table-column_set_default">column_set_default</a></p>
</li>
<li>
<p><a href="#table-column_set_encoding">column_set_encoding</a></p>
</li>
<li>
<p><a href="#table-column_set_comment">column_set_comment</a></p>
</li>
<li>
<p><a href="#table-copy">copy</a></p>
</li>
<li>
<p><a href="#table-create">create</a></p>
</li>
<li>
<p><a href="#table-delete_column">delete_column</a></p>
</li>
<li>
<p><a href="#table-delete">delete</a></p>
</li>
<li>
<p><a href="#table-describe">describe</a></p>
</li>
<li>
<p><a href="#table-drop_range_partition">drop_range_partition</a></p>
</li>
<li>
<p><a href="#table-get_extra_configs">get_extra_configs</a></p>
</li>
<li>
<p><a href="#table-list">list</a></p>
</li>
<li>
<p><a href="#table-locate_row">locate_row</a></p>
</li>
<li>
<p><a href="#table-rename_column">rename_column</a></p>
</li>
<li>
<p><a href="#table-rename_table">rename_table</a></p>
</li>
<li>
<p><a href="#table-scan">scan</a></p>
</li>
<li>
<p><a href="#table-set_extra_config">set_extra_config</a></p>
</li>
<li>
<p><a href="#table-statistics">statistics</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#tablet">tablet</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#tablet-leader_step_down">leader_step_down</a></p>
</li>
<li>
<p><a href="#tablet-unsafe_replace_tablet">unsafe_replace_tablet</a></p>
</li>
<li>
<p><a href="#tablet-change_config">change_config</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#change_config-add_replica">add_replica</a></p>
</li>
<li>
<p><a href="#change_config-change_replica_type">change_replica_type</a></p>
</li>
<li>
<p><a href="#change_config-move_replica">move_replica</a></p>
</li>
<li>
<p><a href="#change_config-remove_replica">remove_replica</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#test">test</a></p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#test-mini_cluster">mini_cluster</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#tserver">tserver</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#tserver-dump_memtrackers">dump_memtrackers</a></p>
</li>
<li>
<p><a href="#tserver-get_flags">get_flags</a></p>
</li>
<li>
<p><a href="#tserver-run">run</a></p>
</li>
<li>
<p><a href="#tserver-set_flag">set_flag</a></p>
</li>
<li>
<p><a href="#tserver-status">status</a></p>
</li>
<li>
<p><a href="#tserver-timestamp">timestamp</a></p>
</li>
<li>
<p><a href="#tserver-list">list</a></p>
</li>
<li>
<p><a href="#tserver-quiesce">quiesce</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#quiesce-status">status</a></p>
</li>
<li>
<p><a href="#quiesce-start">start</a></p>
</li>
<li>
<p><a href="#quiesce-stop">stop</a></p>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#tserver-state">state</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#state-enter_maintenance">enter_maintenance</a></p>
</li>
<li>
<p><a href="#state-exit_maintenance">exit_maintenance</a></p>
<div class="ulist">
<ul>
<li>
<p><a href="#wal">wal</a></p>
</li>
</ul>
</div>
</li>
</ul>
</div>
</li>
<li>
<p><a href="#wal-dump">dump</a></p>
</li>
</ul>
</div>
</div>
</div>
<h1 id="_command_details" class="sect0"><a class="link" href="#_command_details">Command Details</a></h1>
<div class="sect1">
<h2 id="cluster"><a class="link" href="#cluster"><code>cluster</code>: Operate on a Kudu cluster</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="cluster-ksck"><a class="link" href="#cluster-ksck"><code>ksck</code>: Check the health of a Kudu cluster&#160;</a></h3>
<div class="paragraph">
<p>By default, ksck checks that master and tablet server processes are running, and that table metadata is consistent. Use the 'checksum' flag to check that tablet data is consistent (also see the 'tables' and 'tablets' flags). Use the 'checksum_snapshot' along with 'checksum' if the table or tablets are actively receiving inserts or updates. Use the 'verbose' flag to output detailed information on cluster status even if no inconsistency is found in metadata.<br>
<strong>Usage:</strong><br>
<code>kudu cluster ksck &lt;master_addresses&gt; [-checksum_cache_blocks] [-checksum_scan] [-checksum_scan_concurrency=&lt;concurrency&gt;] [-nochecksum_snapshot] [-checksum_timeout_sec=&lt;sec&gt;] [-color=&lt;color&gt;] [-noconsensus] [-fetch_info_concurrency=&lt;concurrency&gt;] [-flags_categories_to_check=&lt;check&gt;] [-ksck_format=&lt;format&gt;] [-noquiescing_info] [-sections=&lt;sections&gt;] [-tables=&lt;tables&gt;] [-tablets=&lt;tablets&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_cache_blocks (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanners cache the read blocks.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Perform a checksum scan on data in the cluster.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_scan_concurrency (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Number of concurrent checksum scans to execute per tablet server.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>4</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_snapshot (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Should the checksum scanner use a snapshot scan?</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">checksum_timeout_sec (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum total seconds to wait for a checksum scan to complete before timing out.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>86400</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">color (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Specifies whether output should be colorized. The default value 'auto' colorizes output if the output is a terminal. The other valid values are 'always' or 'never'.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">consensus (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to check the consensus state from each tablet against the master.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fetch_info_concurrency (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Number of threads to fetch info concurrently.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">flags_categories_to_check (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of flag categories to check for divergence across the cluster; default is time_source; available categories are time_source, unusual.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>time_source</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ksck_format (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Output format for ksck. Available options are 'plain_concise', 'plain_full', 'json_pretty', and 'json_compact'.
'plain_concise' format is plain text, omitting most information about healthy tablets.
'plain_full' is plain text with all results included.
'json_pretty' produces pretty-printed json.
'json_compact' produces json suitable for parsing by other programs.
'json_pretty' and 'json_compact' differ in format, not content.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>plain_concise</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">quiescing_info (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to display the quiescing-related information of each tablet server, e.g. number of tablet leaders per server, the number of active scanners per server.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">sections (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Sections to print (comma-separated list of sections, available sections are: MASTER_SUMMARIES, TSERVER_SUMMARIES, VERSION_SUMMARIES, TABLET_SUMMARIES, TABLE_SUMMARIES, CHECKSUM_RESULTS and TOTAL_COUNT.) If not specified, print all sections.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>*</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tables to include (comma-separated list of table names)If not specified, includes all tables.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablets (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablets to check (comma-separated list of IDs) If not specified, checks all tablets.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="cluster-rebalance"><a class="link" href="#cluster-rebalance"><code>rebalance</code>: Move tablet replicas between tablet servers to balance replica counts for each table and for the cluster as a whole.&#160;</a></h3>
<div class="paragraph">
<p>The rebalancing tool moves tablet replicas between tablet servers, in the same manner as the 'kudu tablet change_config move_replica' command, attempting to balance the count of replicas per table on each tablet server, and after that attempting to balance the total number of replicas per tablet server.<br>
<strong>Usage:</strong><br>
<code>kudu cluster rebalance &lt;master_addresses&gt; [-disable_policy_fixer] [-disable_cross_location_rebalancing] [-disable_intra_location_rebalancing] [-fetch_info_concurrency=&lt;concurrency&gt;] [-ignored_tservers=&lt;tservers&gt;] [-load_imbalance_threshold=&lt;threshold&gt;] [-max_moves_per_server=&lt;server&gt;] [-max_run_time_sec=&lt;sec&gt;] [-max_staleness_interval_sec=&lt;sec&gt;] [-move_replicas_from_ignored_tservers] [-move_single_replicas=&lt;replicas&gt;] [-output_replica_distribution_details] [-report_only] [-tables=&lt;tables&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">disable_policy_fixer (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">In case of multi-location cluster, whether to detect and fix placement policy violations. Fixing placement policy violations involves moving tablet replicas across different locations of the cluster. This setting is applicable to multi-location clusters only.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">disable_cross_location_rebalancing (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">In case of multi-location cluster, whether to move tablet replicas between locations in attempt to spread tablet replicas among location evenly (equalizing loads of locations throughout the cluster). This setting is applicable to multi-location clusters only.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">disable_intra_location_rebalancing (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">In case of multi-location cluster, whether to rebalance tablet replica distribution within each location. This setting is applicable to multi-location clusters only.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fetch_info_concurrency (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Number of threads to fetch info concurrently.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>20</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ignored_tservers (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">UUIDs of tablet servers to ignore while rebalancing the cluster (comma-separated list). If specified, the tablet servers are effectively ignored by the rebalancer tool, they are not considered as a part of the cluster as well as the replicas on them. If not specified, the rebalancer tool will run on all the tablet servers in the cluster.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">load_imbalance_threshold (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The threshold for the per-table location load imbalance. The threshold is used during the cross-location rebalancing phase. If the measured cross-location load imbalance for a table is greater than the specified threshold, the rebalancer tries to move table&#8217;s replicas to reduce the imbalance. The recommended range for the threshold is [0.5, &#8230;&#8203;) with the default value of 1.0. The threshold represents a policy wrt what to prefer: either ideal balance of the cross-location load on per-table basis (lower threshold value) or minimum number of replica movements between locations (greater threshold value). The default value is empirically proven to be a good choice between 'ideal' and 'good enough' replica distributions.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">double</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">max_moves_per_server (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum number of replica moves to perform concurrently on one tablet server: 'move from' and 'move to' are counted as separate move operations.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">uint32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>5</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">max_run_time_sec (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum time to run the rebalancing, in seconds. Specifying 0 means not imposing any limit on the rebalancing run time.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">max_staleness_interval_sec (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Maximum duration of the 'staleness' interval, when the rebalancer cannot make any progress in scheduling new moves and no prior scheduled moves are left, even if re-synchronizing against the cluster&#8217;s state again and again. Such a staleness usually happens in case of a persistent problem with the cluster or when some unexpected concurrent activity is present (such as automatic recovery of failed replicas, etc.)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">uint32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>300</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">move_replicas_from_ignored_tservers (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to move replicas from the specified 'ignored_tservers' to other servers when the source tablet server is healthy. This setting is effective only if the '--ignored_tservers' flag is specified as well. If set true, then all ignored tablet servers must be placed into the 'maintenance mode'.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">move_single_replicas (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to move single replica tablets (i.e. replicas of tablets of replication factor 1). Acceptable values are: 'auto', 'enabled', 'disabled'. The value of 'auto' means turn it on/off depending on the replica management scheme and Kudu version.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>auto</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">output_replica_distribution_details (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to output details on per-table and per-server replica distribution</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">report_only (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to report on table- and cluster-wide replica distribution skew and exit without doing any actual rebalancing</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tables to include (comma-separated list of table names)If not specified, includes all tables.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="diagnose"><a class="link" href="#diagnose"><code>diagnose</code>: Diagnostic tools for Kudu servers and clusters</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="diagnose-parse_stacks"><a class="link" href="#diagnose-parse_stacks"><code>parse_stacks</code>: Parse sampled stack traces out of a diagnostics log&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu diagnose parse_stacks &lt;path&gt;&#8230;&#8203;</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">path&#8230;&#8203;</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">path to log file(s) to parse</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="fs"><a class="link" href="#fs"><code>fs</code>: Operate on a local Kudu filesystem</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="fs-check"><a class="link" href="#fs-check"><code>check</code>: Check a Kudu filesystem for inconsistencies&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu fs check [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-repair]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">repair (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Repair any inconsistencies in the filesystem.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="fs-format"><a class="link" href="#fs-format"><code>format</code>: Format a new Kudu filesystem&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu fs format [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-uuid=&lt;uuid&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">uuid (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">The uuid to use in the filesystem. If not provided, one is generated</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="fs-list"><a class="link" href="#fs-list"><code>list</code>: List metadata for on-disk tablets, rowsets, blocks, and cfiles&#160;</a></h3>
<div class="paragraph">
<p>This tool is useful for discovering and gathering information about on-disk data. Many field types can be added to the results with the --columns flag, and results can be filtered to a specific table, tablet, rowset, column, or block through flags.</p>
</div>
<div class="paragraph">
<p>Note: adding any of the 'cfile' fields to --columns will cause the tool to read on-disk metadata for each CFile in the result set, which could require large amounts of I/O when many results are returned.<br>
<strong>Usage:</strong><br>
<code>kudu fs list [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-table_id=&lt;id&gt;] [-table_name=&lt;name&gt;] [-tablet_id=&lt;id&gt;] [-rowset_id=&lt;id&gt;] [-column_id=&lt;id&gt;] [-block_id=&lt;id&gt;] [-columns=&lt;columns&gt;] [-format=&lt;format&gt;] [-noh]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">table_id (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific table by id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">table_name (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific table by name</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific tablet</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">rowset_id (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific rowset</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">column_id (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific column</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">block_id (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Restrict output to a specific block</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">uint64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>0</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of fields to include in output.
Possible values: table, table-id, tablet-id, partition, rowset-id, block-id, block-kind, column, column-id, cfile-data-type, cfile-nullable, cfile-encoding, cfile-compression, cfile-num-values, cfile-size, cfile-incompatible-features, cfile-compatible-features, cfile-min-key, cfile-max-key, cfile-delta-stats</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>tablet-id, rowset-id, block-id, block-kind</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
Possible values: pretty, space, tsv, csv, and json</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">h (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Pretty-print values in human-readable units</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="fs-update_dirs"><a class="link" href="#fs-update_dirs"><code>update_dirs</code>: Updates the set of data directories in an existing Kudu filesystem&#160;</a></h3>
<div class="paragraph">
<p>If a data directory is in use by a tablet and is removed, the operation will fail unless --force is also used. Starting with Kudu 1.12.0, it is not required to run this tool to add or remove directories. This tool is preserved for backwards compatibility<br>
<strong>Usage:</strong><br>
<code>kudu fs update_dirs [-force] [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">force (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">If true, permits the removal of a data directory that is configured for use by existing tablets. Those tablets will fail the next time the server is started</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="fs-dump"><a class="link" href="#fs-dump"><code>dump</code>: Dump a Kudu filesystem</a></h3>
<div class="paragraph">
<p><br></p>
</div>
<div class="sect3">
<h4 id="dump-block"><a class="link" href="#dump-block"><code>block</code>: Dump the binary contents of a data block&#160;</a></h4>
<div class="paragraph">
<p>This performs no parsing or interpretation of the data stored in the block but rather outputs its binary contents directly.<br>
<strong>Usage:</strong><br>
<code>kudu fs dump block &lt;block_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">block_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">block identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-cfile"><a class="link" href="#dump-cfile"><code>cfile</code>: Dump the contents of a CFile (column file)&#160;</a></h4>
<div class="paragraph">
<p>This interprets the contents of a CFile-formatted block and outputs the decoded row data.<br>
<strong>Usage:</strong><br>
<code>kudu fs dump cfile &lt;block_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-noprint_meta] [-noprint_rows]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">block_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">block identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">print_rows (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Print each row in the CFile</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-tree"><a class="link" href="#dump-tree"><code>tree</code>: Dump the tree of a Kudu filesystem&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu fs dump tree [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-uuid"><a class="link" href="#dump-uuid"><code>uuid</code>: Dump the UUID of a Kudu filesystem&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu fs dump uuid [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="hms"><a class="link" href="#hms"><code>hms</code>: Operate on remote Hive Metastores</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="hms-check"><a class="link" href="#hms-check"><code>check</code>: Check metadata consistency between Kudu and the Hive Metastore catalogs&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu hms check &lt;master_addresses&gt; [-hive_metastore_sasl_enabled] [-hive_metastore_uris=&lt;uris&gt;] [-noignore_other_clusters]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_sasl_enabled (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Configures whether Thrift connections to the Hive Metastore use SASL (Kerberos) security. Only takes effect when --hive_metastore_uris is set, otherwise the configuration from the Kudu master is used. The configured value must match the the hive.metastore.sasl.enabled option in the Hive Metastore configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_uris (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Address of the Hive Metastore instance(s). If not set, the configuration from the Kudu master is used, so this flag should not be overriden in typical situations. The provided port must be for the HMS Thrift service. If a port is not provided, defaults to 9083. If the HMS is deployed in an HA configuration, multiple comma-separated addresses should be supplied. The configured value must match the Hive hive.metastore.uris configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ignore_other_clusters (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to ignore entirely separate Kudu clusters, as indicated by a different set of master addresses.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="hms-downgrade"><a class="link" href="#hms-downgrade"><code>downgrade</code>: Downgrade the metadata to legacy format for Kudu and the Hive Metastores&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu hms downgrade &lt;master_addresses&gt; [-hive_metastore_sasl_enabled] [-hive_metastore_uris=&lt;uris&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_sasl_enabled (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Configures whether Thrift connections to the Hive Metastore use SASL (Kerberos) security. Only takes effect when --hive_metastore_uris is set, otherwise the configuration from the Kudu master is used. The configured value must match the the hive.metastore.sasl.enabled option in the Hive Metastore configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_uris (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Address of the Hive Metastore instance(s). If not set, the configuration from the Kudu master is used, so this flag should not be overriden in typical situations. The provided port must be for the HMS Thrift service. If a port is not provided, defaults to 9083. If the HMS is deployed in an HA configuration, multiple comma-separated addresses should be supplied. The configured value must match the Hive hive.metastore.uris configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="hms-fix"><a class="link" href="#hms-fix"><code>fix</code>: Fix automatically-repairable metadata inconsistencies in the Kudu and Hive Metastore catalogs&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu hms fix &lt;master_addresses&gt; [-dryrun] [-drop_orphan_hms_tables] [-nocreate_missing_hms_tables] [-nofix_inconsistent_tables] [-noupgrade_hms_tables] [-hive_metastore_sasl_enabled] [-hive_metastore_uris=&lt;uris&gt;] [-noignore_other_clusters]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">dryrun (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Print a message for each fix, but do not make modifications to Kudu or the Hive Metastore.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">drop_orphan_hms_tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Drop orphan Hive Metastore tables which refer to non-existent Kudu tables.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">create_missing_hms_tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Create a Hive Metastore table for each Kudu table which is missing one.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fix_inconsistent_tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Fix tables whose Kudu and Hive Metastore metadata differ. If the table name is different, the table is renamed in Kudu to match the HMS. If the columns or other metadata is different the HMS is updated to match Kudu.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">upgrade_hms_tables (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Upgrade Hive Metastore tables from the legacy Impala metadata format to the new Kudu metadata format.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_sasl_enabled (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Configures whether Thrift connections to the Hive Metastore use SASL (Kerberos) security. Only takes effect when --hive_metastore_uris is set, otherwise the configuration from the Kudu master is used. The configured value must match the the hive.metastore.sasl.enabled option in the Hive Metastore configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">hive_metastore_uris (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Address of the Hive Metastore instance(s). If not set, the configuration from the Kudu master is used, so this flag should not be overriden in typical situations. The provided port must be for the HMS Thrift service. If a port is not provided, defaults to 9083. If the HMS is deployed in an HA configuration, multiple comma-separated addresses should be supplied. The configured value must match the Hive hive.metastore.uris configuration.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">ignore_other_clusters (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to ignore entirely separate Kudu clusters, as indicated by a different set of master addresses.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="hms-list"><a class="link" href="#hms-list"><code>list</code>: List the Kudu table HMS entries&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu hms list &lt;master_addresses&gt; [-columns=&lt;columns&gt;] [-format=&lt;format&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">columns (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of HMS entry fields to include in output.
Possible values: database, table, type, owner, kudu.table_name, kudu.table_id, kudu.master_addresses, storage_handler</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>database,table,type,kudu.table_name</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
Possible values: pretty, space, tsv, csv, and json</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="hms-precheck"><a class="link" href="#hms-precheck"><code>precheck</code>: Check that the Kudu cluster is prepared to enable the Hive Metastore integration&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu hms precheck &lt;master_addresses&gt;</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Either comma-separated list of Kudu master addresses where each address is of form 'hostname:port', or a cluster name if it has been configured in ${KUDU_CONFIG}/kudurc</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="local_replica"><a class="link" href="#local_replica"><code>local_replica</code>: Operate on local tablet replicas via the local filesystem</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="local_replica-copy_from_remote"><a class="link" href="#local_replica-copy_from_remote"><code>copy_from_remote</code>: Copy a tablet replica from a remote server&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica copy_from_remote &lt;tablet_id&gt; &lt;source&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">source</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Source RPC address of form hostname:port</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="local_replica-data_size"><a class="link" href="#local_replica-data_size"><code>data_size</code>: Summarize the data size/space usage of the given local replica(s).&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica data_size &lt;tablet_id_pattern&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-format=&lt;format&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id_pattern</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet identifier pattern. This argument supports basic glob syntax: '*' matches 0 or more wildcard characters.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
Possible values: pretty, space, tsv, csv, and json</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="local_replica-delete"><a class="link" href="#local_replica-delete"><code>delete</code>: Delete a tablet replica from the local filesystem. By default, leaves a tombstone record.&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica delete &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-clean_unsafe]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">clean_unsafe (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Delete the local replica completely, not leaving a tombstone. This is not guaranteed to be safe because it also removes the consensus metadata (including Raft voting record) for the specified tablet, which violates the Raft vote durability requirements.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="local_replica-list"><a class="link" href="#local_replica-list"><code>list</code>: Show list of tablet replicas in the local filesystem&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica list [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-list_detail]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">list_detail (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Print partition info for the local replicas</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="local_replica-cmeta"><a class="link" href="#local_replica-cmeta"><code>cmeta</code>: Operate on a local tablet replica&#8217;s consensus metadata file</a></h3>
<div class="paragraph">
<p><br></p>
</div>
<div class="sect3">
<h4 id="cmeta-print_replica_uuids"><a class="link" href="#cmeta-print_replica_uuids"><code>print_replica_uuids</code>: Print all tablet replica peer UUIDs found in a tablet&#8217;s Raft configuration&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica cmeta print_replica_uuids &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="cmeta-rewrite_raft_config"><a class="link" href="#cmeta-rewrite_raft_config"><code>rewrite_raft_config</code>: Rewrite a tablet replica&#8217;s Raft configuration&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica cmeta rewrite_raft_config &lt;tablet_id&gt; &lt;peers&gt;&#8230;&#8203; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">peers&#8230;&#8203;</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">List of peers where each peer is of form 'uuid:hostname:port'</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="cmeta-set_term"><a class="link" href="#cmeta-set_term"><code>set_term</code>: Bump the current term stored in consensus metadata&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica cmeta set_term &lt;tablet_id&gt; &lt;term&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">term</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">the new raft term (must be greater than the current term)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
<div class="sect2">
<h3 id="local_replica-dump"><a class="link" href="#local_replica-dump"><code>dump</code>: Dump a Kudu filesystem</a></h3>
<div class="paragraph">
<p><br></p>
</div>
<div class="sect3">
<h4 id="dump-block_ids"><a class="link" href="#dump-block_ids"><code>block_ids</code>: Dump the IDs of all blocks belonging to a local replica&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica dump block_ids &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-data_dirs"><a class="link" href="#dump-data_dirs"><code>data_dirs</code>: Dump the data directories where the replica&#8217;s data is stored&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica dump data_dirs &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-meta"><a class="link" href="#dump-meta"><code>meta</code>: Dump the metadata of a local replica&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica dump meta &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-rowset"><a class="link" href="#dump-rowset"><code>rowset</code>: Dump the rowset contents of a local replica&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica dump rowset &lt;tablet_id&gt; [-nodump_all_columns] [-nodump_metadata] [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-nrows=&lt;nrows&gt;] [-rowset_index=&lt;index&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">dump_all_columns (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">If true, dumped rows include all of the columns in the rowset. If false, dumped rows include just the key columns (in a comparable format).</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">dump_metadata (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">If true, dumps rowset metadata before dumping data. If false, only dumps the data.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">nrows (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Number of rows to dump. If negative, dumps all rows.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">rowset_index (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Index of the rowset in local replica, default value(-1) will dump all the rowsets of the local replica</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>-1</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect3">
<h4 id="dump-wals"><a class="link" href="#dump-wals"><code>wals</code>: Dump all WAL (write-ahead log) segments of a local replica&#160;</a></h4>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu local_replica dump wals &lt;tablet_id&gt; [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-fs_wal_dir=&lt;dir&gt;] [-print_entries=&lt;entries&gt;] [-noprint_meta] [-truncate_data=&lt;data&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">tablet_id</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Tablet Identifier</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_data_dirs (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of directories with data blocks. If this is not specified, fs_wal_dir will be used as the sole data block directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_metadata_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with metadata. If this is not specified, for compatibility with Kudu 1.6 and below, Kudu will check the first entry of fs_data_dirs for metadata and use it as the metadata directory if any exists. If none exists, fs_wal_dir will be used as the metadata directory.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">print_entries (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">How to print entries:
false|0|no = don&#8217;t print
true|1|yes|decoded = print them decoded
pb = print the raw protobuf
id = print only their ids</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>decoded</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">print_meta (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Include metadata in output</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>true</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">truncate_data (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Truncate the data fields to the given number of bytes before printing. Set to 0 to disable</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int32</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>100</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="master"><a class="link" href="#master"><code>master</code>: Operate on a Kudu Master</a></h2>
<div class="sectionbody">
<div class="paragraph">
<p><br></p>
</div>
<div class="sect2">
<h3 id="master-dump_memtrackers"><a class="link" href="#master-dump_memtrackers"><code>dump_memtrackers</code>: Dump the memtrackers from a Kudu Master&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu master dump_memtrackers &lt;master_address&gt; [-format=&lt;format&gt;] [-memtracker_output=&lt;output&gt;] [-timeout_ms=&lt;ms&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">format (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Format to use for printing list output tables.
Possible values: pretty, space, tsv, csv, and json</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>pretty</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">memtracker_output (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">One of 'json', 'json_compact' or 'table'. Table output flattens the memtracker hierarchy.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>table</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">timeout_ms (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">RPC timeout in milliseconds</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">int64</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>60000</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="master-get_flags"><a class="link" href="#master-get_flags"><code>get_flags</code>: Get the gflags for a Kudu Master&#160;</a></h3>
<div class="paragraph">
<p><strong>Usage:</strong><br>
<code>kudu master get_flags &lt;master_address&gt; [-all_flags] [-flags=&lt;flags&gt;] [-flag_tags=&lt;tags&gt;]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_address</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Address of a Kudu Master of form 'hostname:port'. Port may be omitted if the Master is bound to the default port.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">all_flags (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Whether to return all flags, or only flags that were explicitly set.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">bool</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><code>false</code></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">flags (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of flags used to restrict which flags are returned. An empty value means no restriction. If non-empty, all_flags is ignored.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">flag_tags (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of tags used to restrict which flags are returned. An empty value matches all tags</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
<p><br></p>
</div>
</div>
<div class="sect2">
<h3 id="master-run"><a class="link" href="#master-run"><code>run</code>: Runs a Kudu Master&#160;</a></h3>
<div class="paragraph">
<p>Note: The master server is started in this process and runs until interrupted.</p>
</div>
<div class="paragraph">
<p>The most common configuration flags are described below. For all the configuration options pass --helpfull or see <a href="https://kudu.apache.org/docs/configuration_reference.html#kudu-master_supported" class="bare">https://kudu.apache.org/docs/configuration_reference.html#kudu-master_supported</a><br>
<strong>Usage:</strong><br>
<code>kudu master run [-master_addresses=&lt;addresses&gt;] [-fs_wal_dir=&lt;dir&gt;] [-fs_data_dirs=&lt;dirs&gt;] [-fs_metadata_dir=&lt;dir&gt;] [-log_dir=&lt;dir&gt;] [-logtostderr]</code>
<br>
<strong>Arguments:</strong></p>
</div>
<table class="tableblock frame-topbot grid-all spread">
<colgroup>
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
<col style="width: 25%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Type</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">master_addresses (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Comma-separated list of the RPC addresses belonging to all Masters in this cluster. NOTE: if not specified, configures a non-replicated Master.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">fs_wal_dir (optional)</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">none</p></td>