Apache Kudu Configuration Reference

The contents of this file are generated from the output of the --helpxml flag for each binary, during the build of the documentation. Do not edit this file or the included files manually.

kudu-master Flags

Stable Flags

Flags tagged stable and not advanced are safe to use for common configuration tasks.

--block_cache_capacity_mb

block cache capacity in MB

Type

int64

Default

512

Tags

stable

 

--log_force_fsync_all

Whether the Log/WAL should explicitly call fsync() after each write.

Type

bool

Default

false

Tags

stable

 

--fs_data_dirs

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.

Type

string

Default

none

Tags

stable

 

--fs_wal_dir

Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs

Type

string

Default

none

Tags

stable

 

--master_addresses

Comma-separated list of the RPC addresses belonging to all Masters in this cluster. NOTE: if not specified, configures a non-replicated Master.

Type

string

Default

none

Tags

stable

 

--rpc_bind_addresses

Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.

Type

string

Default

0.0.0.0

Tags

stable

 

--webserver_port

Port to bind to for the web server

Type

int32

Default

0

Tags

stable

 

--log_filename

Prefix of log filename - full path is <log_dir>/<log_filename>.[INFO|WARN|ERROR|FATAL]

Type

string

Default

none

Tags

stable

 

--maintenance_manager_num_threads

Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.

Type

int32

Default

1

Tags

stable

 

--memory_limit_hard_bytes

Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.

Type

int64

Default

0

Tags

stable

 

--flagfile

load flags from file

Type

string

Default

none

Tags

stable

 

--help

show help on all flags [tip: all flags can have two dashes]

Type

bool

Default

false

Tags

stable

 

--version

show version and build info and exit

Type

bool

Default

false

Tags

stable

 

--colorlogtostderr

color messages logged to stderr (if supported by terminal)

Type

bool

Default

false

Tags

runtime,stable

 

--log_dir

If specified, logfiles are written into this directory instead of the default logging directory.

Type

string

Default

none

Tags

stable

 

--logtostderr

log messages go to stderr instead of logfiles

Type

bool

Default

false

Tags

runtime,stable

 

--max_log_size

approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.

Type

int32

Default

1800

Tags

runtime,stable

 

Stable, Advanced Flags

Flags tagged stable and advanced are supported, but should be considered "expert" options and should be used carefully and after thorough testing.

--enable_process_lifetime_heap_profiling

Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.

Type

bool

Default

false

Tags

advanced,stable

 

--heap_profile_path

Output path to store heap profiles. If not set profiles are stored in /tmp/<process-name>.<pid>.<n>.heap.

Type

string

Default

none

Tags

advanced,stable

 

--unlock_experimental_flags

Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.

Type

bool

Default

false

Tags

stable,advanced

 

--unlock_unsafe_flags

Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.

Type

bool

Default

false

Tags

stable,advanced

 

--fromenv

set flags from the environment [use 'export FLAGS_flag1=value']

Type

string

Default

none

Tags

advanced,stable

 

--tryfromenv

set flags from the environment if present

Type

string

Default

none

Tags

advanced,stable

 

--undefok

comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name. IMPORTANT: flags in this list that have arguments MUST use the flag=value format

Type

string

Default

none

Tags

advanced,stable

 

--helpmatch

show help on modules whose name contains the specified substr

Type

string

Default

none

Tags

advanced,stable

 

--helpon

show help on the modules named by this flag value

Type

string

Default

none

Tags

advanced,stable

 

--helppackage

show help on all modules in the main package

Type

bool

Default

false

Tags

advanced,stable

 

--helpshort

show help on only the main module for this program

Type

bool

Default

false

Tags

advanced,stable

 

--helpxml

produce an xml version of help

Type

bool

Default

false

Tags

advanced,stable

 

Put additional links to the log files in this directory

Type

string

Default

none

Tags

advanced,stable

 

--log_prefix

Prepend the log prefix to the start of each log line

Type

bool

Default

true

Tags

runtime,advanced,stable

 

--minloglevel

Messages logged at a lower level than this don’t actually get logged anywhere

Type

int32

Default

0

Tags

runtime,advanced,stable

 

--stderrthreshold

log messages at or above this level are copied to stderr in addition to logfiles. This flag obsoletes --alsologtostderr.

Type

int32

Default

2

Tags

runtime,advanced,stable

 

--stop_logging_if_full_disk

Stop attempting to log to disk if the disk is full.

Type

bool

Default

false

Tags

runtime,advanced,stable

 

--symbolize_stacktrace

Symbolize the stack trace in the tombstone

Type

bool

Default

true

Tags

runtime,advanced,stable

 

--v

Show all VLOG(m) messages for m ⇐ this. Overridable by --vmodule.

Type

int32

Default

0

Tags

runtime,advanced,stable

 

--vmodule

per-module verbose level. Argument is a comma-separated list of <module name>=<log level>. <module name> is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). <log level> overrides any value given by --v.

Type

string

Default

none

Tags

advanced,stable

 


kudu-tserver Flags

Stable Flags

Flags tagged stable and not advanced are safe to use for common configuration tasks.

--block_cache_capacity_mb

block cache capacity in MB

Type

int64

Default

512

Tags

stable

 

--log_force_fsync_all

Whether the Log/WAL should explicitly call fsync() after each write.

Type

bool

Default

false

Tags

stable

 

--fs_data_dirs

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.

Type

string

Default

none

Tags

stable

 

--fs_wal_dir

Directory with write-ahead logs. If this is not specified, the program will not start. May be the same as fs_data_dirs

Type

string

Default

none

Tags

stable

 

--rpc_bind_addresses

Comma-separated list of addresses to bind to for RPC connections. Currently, ephemeral ports (i.e. port 0) are not allowed.

Type

string

Default

0.0.0.0

Tags

stable

 

--webserver_port

Port to bind to for the web server

Type

int32

Default

0

Tags

stable

 

--tserver_master_addrs

Comma separated addresses of the masters which the tablet server should connect to. The masters do not read this flag — configure the masters separately using 'rpc_bind_addresses'.

Type

string

Default

127.0.0.1:7051

Tags

stable

 

--log_filename

Prefix of log filename - full path is <log_dir>/<log_filename>.[INFO|WARN|ERROR|FATAL]

Type

string

Default

none

Tags

stable

 

--maintenance_manager_num_threads

Size of the maintenance manager thread pool. For spinning disks, the number of threads should not be above the number of devices.

Type

int32

Default

1

Tags

stable

 

--memory_limit_hard_bytes

Maximum amount of memory this daemon should use, in bytes. A value of 0 autosizes based on the total system memory. A value of -1 disables all memory limiting.

Type

int64

Default

0

Tags

stable

 

--flagfile

load flags from file

Type

string

Default

none

Tags

stable

 

--help

show help on all flags [tip: all flags can have two dashes]

Type

bool

Default

false

Tags

stable

 

--version

show version and build info and exit

Type

bool

Default

false

Tags

stable

 

--colorlogtostderr

color messages logged to stderr (if supported by terminal)

Type

bool

Default

false

Tags

runtime,stable

 

--log_dir

If specified, logfiles are written into this directory instead of the default logging directory.

Type

string

Default

none

Tags

stable

 

--logtostderr

log messages go to stderr instead of logfiles

Type

bool

Default

false

Tags

runtime,stable

 

--max_log_size

approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1.

Type

int32

Default

1800

Tags

runtime,stable

 

Stable, Advanced Flags

Flags tagged stable and advanced are supported, but should be considered "expert" options and should be used carefully and after thorough testing.

--enable_process_lifetime_heap_profiling

Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path. Enabling this option will disable the on-demand/remote server profile handlers.

Type

bool

Default

false

Tags

advanced,stable

 

--heap_profile_path

Output path to store heap profiles. If not set profiles are stored in /tmp/<process-name>.<pid>.<n>.heap.

Type

string

Default

none

Tags

advanced,stable

 

--unlock_experimental_flags

Unlock flags marked as 'experimental'. These flags are not guaranteed to be maintained across releases of Kudu, and may enable features or behavior known to be unstable. Use at your own risk.

Type

bool

Default

false

Tags

stable,advanced

 

--unlock_unsafe_flags

Unlock flags marked as 'unsafe'. These flags are not guaranteed to be maintained across releases of Kudu, and enable features or behavior known to be unsafe. Use at your own risk.

Type

bool

Default

false

Tags

stable,advanced

 

--fromenv

set flags from the environment [use 'export FLAGS_flag1=value']

Type

string

Default

none

Tags

advanced,stable

 

--tryfromenv

set flags from the environment if present

Type

string

Default

none

Tags

advanced,stable

 

--undefok

comma-separated list of flag names that it is okay to specify on the command line even if the program does not define a flag with that name. IMPORTANT: flags in this list that have arguments MUST use the flag=value format

Type

string

Default

none

Tags

advanced,stable

 

--helpmatch

show help on modules whose name contains the specified substr

Type

string

Default

none

Tags

advanced,stable

 

--helpon

show help on the modules named by this flag value

Type

string

Default

none

Tags

advanced,stable

 

--helppackage

show help on all modules in the main package

Type

bool

Default

false

Tags

advanced,stable

 

--helpshort

show help on only the main module for this program

Type

bool

Default

false

Tags

advanced,stable

 

--helpxml

produce an xml version of help

Type

bool

Default

false

Tags

advanced,stable

 

Put additional links to the log files in this directory

Type

string

Default

none

Tags

advanced,stable

 

--log_prefix

Prepend the log prefix to the start of each log line

Type

bool

Default

true

Tags

runtime,advanced,stable

 

--minloglevel

Messages logged at a lower level than this don’t actually get logged anywhere

Type

int32

Default

0

Tags

runtime,advanced,stable

 

--stderrthreshold

log messages at or above this level are copied to stderr in addition to logfiles. This flag obsoletes --alsologtostderr.

Type

int32

Default

2

Tags

runtime,advanced,stable

 

--stop_logging_if_full_disk

Stop attempting to log to disk if the disk is full.

Type

bool

Default

false

Tags

runtime,advanced,stable

 

--symbolize_stacktrace

Symbolize the stack trace in the tombstone

Type

bool

Default

true

Tags

runtime,advanced,stable

 

--v

Show all VLOG(m) messages for m ⇐ this. Overridable by --vmodule.

Type

int32

Default

0

Tags

runtime,advanced,stable

 

--vmodule

per-module verbose level. Argument is a comma-separated list of <module name>=<log level>. <module name> is a glob pattern, matched against the filename base (that is, name ignoring .cc/.h./-inl.h). <log level> overrides any value given by --v.

Type

string

Default

none

Tags

advanced,stable

 


Apache Kudu Unsupported Configuration Flags

The contents of this file are generated from the output of the --helpxml flag for each binary, during the build of the documentation. Do not edit this file or the included files manually.

These flags are unsupported and are included for informational purposes only. They are subject to change or be removed at any time.

kudu-master Unsupported Flags

Flags marked advanced or experimental and not marked stable, or flags with no stability tag, are unsupported and are included for informational purposes only. They are subject to change or be removed without notice.

--block_cache_type

Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.

Type

string

Default

DRAM

Tags

experimental

--cfile_default_block_size

The default block size to use in cfiles

Type

int32

Default

262144

Tags

advanced

--cfile_default_compression_codec

Default cfile block compression codec.

Type

string

Default

none

Tags

advanced

--cfile_do_on_finish

What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.

Type

string

Default

flush

Tags

experimental

--codegen_dump_functions

Whether to print the LLVM IR for generated functions

Type

bool

Default

false

Tags

runtime,experimental

--codegen_dump_mc

Whether to dump the disassembly of the machine code for generated functions.

Type

bool

Default

false

Tags

runtime,experimental

--codegen_cache_capacity

Number of entries which may be stored in the code generation cache.

Type

int32

Default

100

Tags

experimental

--codegen_time_compilation

Whether to print time that each code generation request took.

Type

bool

Default

false

Tags

runtime,experimental

--consensus_max_batch_size_bytes

The maximum per-tablet RPC batch size when updating peers.

Type

int32

Default

1048576

Tags

advanced

--follower_unavailable_considered_failed_sec

Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.

Type

int32

Default

300

Tags

advanced

--group_commit_queue_size_bytes

Maximum size of the group commit queue in bytes

Type

int32

Default

4194304

Tags

advanced

--log_max_segments_to_retain

The maximum number of past log segments to keep at all times for the purposes of catching up other peers.

Type

int32

Default

10

Tags

experimental,advanced,runtime

--log_min_segments_to_retain

The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.

Type

int32

Default

2

Tags

advanced,runtime

--global_log_cache_size_limit_mb

Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.

Type

int32

Default

1024

Tags

advanced

--log_cache_size_limit_mb

The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.

Type

int32

Default

128

Tags

advanced

--log_async_preallocate_segments

Whether the WAL segments preallocation should happen asynchronously

Type

bool

Default

true

Tags

advanced

--log_preallocate_segments

Whether the WAL should preallocate the entire segment before writing to it

Type

bool

Default

true

Tags

advanced

--log_segment_size_mb

The default segment size for log roll-overs, in MB

Type

int32

Default

64

Tags

advanced

--evict_failed_followers

Whether to evict followers from the Raft config that have fallen too far behind the leader’s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec

Type

bool

Default

true

Tags

advanced

--leader_failure_exp_backoff_max_delta_ms

Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.

Type

int32

Default

20000

Tags

experimental

--leader_failure_max_missed_heartbeat_periods

Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.

Type

double

Default

3

Tags

advanced

--leader_failure_monitor_check_mean_ms

The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.

Type

int32

Default

-1

Tags

experimental

--leader_failure_monitor_check_stddev_ms

The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.

Type

int32

Default

-1

Tags

experimental

--raft_enable_pre_election

When enabled, candidates will call a pre-election before running a real leader election.

Type

bool

Default

true

Tags

runtime,experimental

--raft_heartbeat_interval_ms

The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.

Type

int32

Default

500

Tags

advanced

--block_coalesce_close

Coalesce synchronization of data during CloseBlocks()

Type

bool

Default

false

Tags

experimental

--fs_data_dirs_full_disk_cache_seconds

Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.

Type

int32

Default

30

Tags

evolving,advanced

--block_manager

Which block manager to use for storage. Valid options are 'file' and 'log'.

Type

string

Default

log

Tags

advanced

--log_block_manager_test_hole_punching

Ensure hole punching is supported by the underlying filesystem

Type

bool

Default

true

Tags

unsafe,advanced

--log_container_max_size

Maximum size (soft) of a log container

Type

uint64

Default

10737418240

Tags

advanced

--log_container_preallocate_bytes

Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation

Type

uint64

Default

33554432

Tags

advanced

--catalog_manager_delete_orphaned_tablets

Whether the master should delete tablets reported by tablet servers for which there are no corresponding records in the master’s metadata. Use this option with care; it may cause permanent tablet data loss under specific (and rare) cases of master failures!

Type

bool

Default

false

Tags

advanced

--default_num_replicas

Default number of replicas for tables that do not have the num_replicas set.

Type

int32

Default

3

Tags

advanced

--master_failover_catchup_timeout_ms

Amount of time to give a newly-elected leader master to load the previous master’s metadata and become active. If this time is exceeded, the node crashes.

Type

int32

Default

30000

Tags

experimental,advanced

--master_ts_rpc_timeout_ms

Timeout used for the master→TS async rpc calls.

Type

int32

Default

30000

Tags

advanced

--max_create_tablets_per_ts

The number of tablets per TS that can be requested for a new table.

Type

int32

Default

20

Tags

advanced

--table_locations_ttl_ms

Maximum time in milliseconds which clients may cache table locations. New range partitions may not be visible to existing client instances until after waiting for the ttl period.

Type

int32

Default

3600000

Tags

advanced

--tablet_creation_timeout_ms

Timeout used by the master when attempting to create tablet replicas during table creation.

Type

int32

Default

30000

Tags

advanced

--unresponsive_ts_rpc_timeout_ms

After this amount of time, the master will stop attempting to contact a tablet server in order to perform operations such as deleting a tablet.

Type

int32

Default

3600000

Tags

advanced

--master_registration_rpc_timeout_ms

Timeout for retrieving master registration over RPC.

Type

int32

Default

1500

Tags

experimental

--tserver_unresponsive_timeout_ms

The period of time that a Master can go without receiving a heartbeat from a tablet server before considering it unresponsive. Unresponsive servers are not selected when assigning replicas during table creation or re-replication.

Type

int32

Default

60000

Tags

advanced

--rpc_acceptor_listen_backlog

Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.

Type

int32

Default

128

Tags

advanced

--rpc_default_keepalive_time_ms

If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.

Type

int32

Default

65000

Tags

advanced

--rpc_ssl_certificate_authority

Path to the certificate authority to be used by the client side of the connection to verify the validity of the certificate presented by the server.

Type

string

Default

none

Tags

experimental

--rpc_ssl_private_key

Path to the private key to be used to complement the public key present in --ssl_server_certificate

Type

string

Default

none

Tags

experimental

--rpc_ssl_server_certificate

Path to the SSL certificate to be used for the RPC layer.

Type

string

Default

none

Tags

experimental

--server_require_kerberos

Whether to force all inbound RPC connections to authenticate with Kerberos

Type

bool

Default

false

Tags

experimental

--rpc_trace_negotiation

If enabled, dump traces of all RPC negotiations to the log

Type

bool

Default

false

Tags

experimental,advanced,runtime

--rpc_callback_max_cycles

The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)

Type

int64

Default

100000000

Tags

runtime,advanced

--rpc_negotiation_timeout_ms

Timeout for negotiating an RPC connection.

Type

int64

Default

15000

Tags

runtime,advanced

--remember_clients_ttl_ms

Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.

Type

int64

Default

3600000

Tags

advanced

--remember_responses_ttl_ms

Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.

Type

int64

Default

600000

Tags

advanced

--rpc_dump_all_traces

If true, dump all RPC traces at INFO level

Type

bool

Default

false

Tags

runtime,advanced

--rpc_max_message_size

The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.

Type

int32

Default

52428800

Tags

runtime,advanced

--kerberos_principal

Kerberos principal that this daemon will log in as. The special token _HOST will be replaced with the FQDN of the local host.

Type

string

Default

kudu/_HOST

Tags

experimental

--keytab

Path to the Kerberos Keytab for this server

Type

string

Default

none

Tags

experimental

--web_log_bytes

The maximum number of bytes to display on the debug webserver’s log page

Type

int64

Default

1048576

Tags

runtime,advanced

--max_clock_sync_error_usec

Maximum allowed clock synchronization error as reported by NTP before the server will abort.

Type

int32

Default

10000000

Tags

runtime,advanced

--rpc_num_acceptors_per_address

Number of RPC acceptor threads for each bound address

Type

int32

Default

1

Tags

advanced

--rpc_num_service_threads

Number of RPC worker threads to run

Type

int32

Default

10

Tags

advanced

--rpc_service_queue_length

Default length of queue for incoming RPC requests

Type

int32

Default

50

Tags

advanced

--max_negotiation_threads

Maximum number of connection negotiation threads.

Type

int32

Default

50

Tags

advanced

--min_negotiation_threads

Minimum number of connection negotiation threads.

Type

int32

Default

0

Tags

advanced

--num_reactor_threads

Number of libev reactor threads to start.

Type

int32

Default

4

Tags

advanced

--metrics_log_interval_ms

Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.

Type

int32

Default

0

Tags

advanced

--webserver_max_post_length_bytes

The maximum length of a POST request that will be accepted by the embedded web server.

Type

int32

Default

1048576

Tags

runtime,advanced

--webserver_doc_root

Files under <webserver_doc_root> are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root

Type

string

Default

none

Tags

advanced

--webserver_enable_doc_root

If true, webserver may serve static files from the webserver_doc_root

Type

bool

Default

true

Tags

advanced

--webserver_interface

Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0

Type

string

Default

none

Tags

advanced

--webserver_num_worker_threads

Maximum number of threads to start for handling web server requests

Type

int32

Default

50

Tags

advanced

--budgeted_compaction_target_rowset_size

The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used

Type

int32

Default

33554432

Tags

advanced,experimental

--compaction_approximation_ratio

Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.

Type

double

Default

1.0499999523162842

Tags

experimental

--deltafile_default_block_size

Block size for delta files. In the future, this may become configurable on a per-table basis.

Type

int32

Default

32768

Tags

experimental

--default_composite_key_index_block_size_bytes

Block size used for composite key indexes.

Type

int32

Default

4096

Tags

experimental

--tablet_delta_store_major_compact_min_ratio

Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)

Type

double

Default

0.10000000149011612

Tags

experimental

--tablet_delta_store_minor_compact_max

How many delta stores are required before forcing a minor delta compaction (Advanced option)

Type

int32

Default

1000

Tags

experimental

--tablet_bloom_block_size

Block size of the bloom filters used for tablet keys.

Type

int32

Default

4096

Tags

advanced

--tablet_bloom_target_fp_rate

Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.

Type

double

Default

9.9999997473787516e-05

Tags

advanced

--tablet_compaction_budget_mb

Budget for a single compaction

Type

int32

Default

128

Tags

experimental

--tablet_history_max_age_sec

Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.

Type

int32

Default

900

Tags

advanced

--tablet_throttler_burst_factor

Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.

Type

double

Default

1

Tags

experimental

--tablet_throttler_bytes_per_sec

Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.

Type

int64

Default

0

Tags

experimental

--tablet_throttler_rpc_per_sec

Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.

Type

int64

Default

0

Tags

experimental

--flush_threshold_mb

Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn’t flushed in a while, or if the server-wide memory limit has been reached.

Type

int32

Default

1024

Tags

experimental

--tablet_transaction_memory_limit_mb

Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.

Type

int64

Default

64

Tags

advanced

--heartbeat_interval_ms

Interval at which the TS heartbeats to the master.

Type

int32

Default

1000

Tags

advanced

--heartbeat_max_failures_before_backoff

Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.

Type

int32

Default

3

Tags

advanced

--heartbeat_rpc_timeout_ms

Timeout used for the TS→Master heartbeat RPCs.

Type

int32

Default

15000

Tags

advanced

--scanner_ttl_ms

Number of milliseconds of inactivity allowed for a scannerbefore it may be expired

Type

int32

Default

60000

Tags

advanced

--scanner_batch_size_rows

The number of rows to batch for servicing scan requests.

Type

int32

Default

100

Tags

runtime,advanced

--scanner_default_batch_size_bytes

The default size for batches of scan results

Type

int32

Default

1048576

Tags

runtime,advanced

--scanner_max_batch_size_bytes

The maximum batch size that a client may request for scan results.

Type

int32

Default

8388608

Tags

runtime,advanced

--num_tablets_to_open_simultaneously

Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.

Type

int32

Default

0

Tags

advanced

--trace_to_console

Trace pattern specifying which trace events should be dumped directly to the console

Type

string

Default

none

Tags

experimental

--never_fsync

Never fsync() anything to disk. This is used by certain test cases to speed up runtime. This is very unsafe to use in production.

Type

bool

Default

false

Tags

unsafe,advanced

--suicide_on_eio

Kill the process if an I/O operation results in EIO

Type

bool

Default

true

Tags

advanced

--writable_file_use_fsync

Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.

Type

bool

Default

false

Tags

advanced

--disable_core_dumps

Disable core dumps when this process crashes.

Type

bool

Default

false

Tags

evolving,advanced

--log_target_replay_size_mb

The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.

Type

int64

Default

1024

Tags

experimental

--memory_limit_soft_percentage

Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.

Type

int32

Default

60

Tags

advanced

--memory_limit_warn_threshold_percentage

Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.

Type

int32

Default

98

Tags

advanced

--tcmalloc_max_free_bytes_percentage

Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.

Type

int32

Default

10

Tags

advanced

--metrics_retirement_age_ms

The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)

Type

int32

Default

120000

Tags

advanced,runtime

--local_ip_for_outbound_sockets

IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.

Type

string

Default

none

Tags

experimental

--nvm_cache_allocation_retry_count

The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.

Type

int32

Default

10

Tags

experimental,advanced

--nvm_cache_path

The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.

Type

string

Default

/vmem

Tags

experimental

--drop_log_memory

Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.

Type

bool

Default

true

Tags

runtime,advanced

--log_backtrace_at

Emit a backtrace when logging at file:linenum.

Type

string

Default

none

Tags

advanced

--logbuflevel

Buffer log messages logged at this level or lower (-1 means don’t buffer; 0 means buffer INFO only; …​)

Type

int32

Default

0

Tags

runtime,advanced

--logbufsecs

Buffer log messages for at most this many seconds

Type

int32

Default

30

Tags

runtime,advanced


kudu-tserver Unsupported Flags

Flags marked advanced or experimental and not marked stable, or flags with no stability tag, are unsupported and are included for informational purposes only. They are subject to change or be removed without notice.

--block_cache_type

Which type of block cache to use for caching data. Valid choices are 'DRAM' or 'NVM'. DRAM, the default, caches data in regular memory. 'NVM' caches data in a memory-mapped file using the NVML library.

Type

string

Default

DRAM

Tags

experimental

--cfile_default_block_size

The default block size to use in cfiles

Type

int32

Default

262144

Tags

advanced

--cfile_default_compression_codec

Default cfile block compression codec.

Type

string

Default

none

Tags

advanced

--cfile_do_on_finish

What to do to cfile blocks when writing is finished. Possible values are 'close', 'flush', or 'nothing'.

Type

string

Default

flush

Tags

experimental

--codegen_dump_functions

Whether to print the LLVM IR for generated functions

Type

bool

Default

false

Tags

runtime,experimental

--codegen_dump_mc

Whether to dump the disassembly of the machine code for generated functions.

Type

bool

Default

false

Tags

runtime,experimental

--codegen_cache_capacity

Number of entries which may be stored in the code generation cache.

Type

int32

Default

100

Tags

experimental

--codegen_time_compilation

Whether to print time that each code generation request took.

Type

bool

Default

false

Tags

runtime,experimental

--consensus_max_batch_size_bytes

The maximum per-tablet RPC batch size when updating peers.

Type

int32

Default

1048576

Tags

advanced

--follower_unavailable_considered_failed_sec

Seconds that a leader is unable to successfully heartbeat to a follower after which the follower is considered to be failed and evicted from the config.

Type

int32

Default

300

Tags

advanced

--group_commit_queue_size_bytes

Maximum size of the group commit queue in bytes

Type

int32

Default

4194304

Tags

advanced

--log_max_segments_to_retain

The maximum number of past log segments to keep at all times for the purposes of catching up other peers.

Type

int32

Default

10

Tags

experimental,advanced,runtime

--log_min_segments_to_retain

The minimum number of past log segments to keep at all times, regardless of what is required for durability. Must be at least 1.

Type

int32

Default

2

Tags

advanced,runtime

--global_log_cache_size_limit_mb

Server-wide version of 'log_cache_size_limit_mb'. The total memory used for caching log entries across all tablets is kept under this threshold.

Type

int32

Default

1024

Tags

advanced

--log_cache_size_limit_mb

The total per-tablet size of consensus entries which may be kept in memory. The log cache attempts to keep all entries which have not yet been replicated to all followers in memory, but if the total size of those entries exceeds this limit within an individual tablet, the oldest will be evicted.

Type

int32

Default

128

Tags

advanced

--log_async_preallocate_segments

Whether the WAL segments preallocation should happen asynchronously

Type

bool

Default

true

Tags

advanced

--log_preallocate_segments

Whether the WAL should preallocate the entire segment before writing to it

Type

bool

Default

true

Tags

advanced

--log_segment_size_mb

The default segment size for log roll-overs, in MB

Type

int32

Default

64

Tags

advanced

--evict_failed_followers

Whether to evict followers from the Raft config that have fallen too far behind the leader’s log to catch up normally or have been unreachable by the leader for longer than follower_unavailable_considered_failed_sec

Type

bool

Default

true

Tags

advanced

--leader_failure_exp_backoff_max_delta_ms

Maximum time to sleep in between leader election retries, in addition to the regular timeout. When leader election fails the interval in between retries increases exponentially, up to this value.

Type

int32

Default

20000

Tags

experimental

--leader_failure_max_missed_heartbeat_periods

Maximum heartbeat periods that the leader can fail to heartbeat in before we consider the leader to be failed. The total failure timeout in milliseconds is raft_heartbeat_interval_ms times leader_failure_max_missed_heartbeat_periods. The value passed to this flag may be fractional.

Type

double

Default

3

Tags

advanced

--leader_failure_monitor_check_mean_ms

The mean failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), uses the value of 'raft_heartbeat_interval_ms'.

Type

int32

Default

-1

Tags

experimental

--leader_failure_monitor_check_stddev_ms

The standard deviation of the failure-checking interval of the randomized failure monitor. If this is configured to -1 (the default), this is set to half of the mean check interval.

Type

int32

Default

-1

Tags

experimental

--raft_enable_pre_election

When enabled, candidates will call a pre-election before running a real leader election.

Type

bool

Default

true

Tags

runtime,experimental

--raft_heartbeat_interval_ms

The heartbeat interval for Raft replication. The leader produces heartbeats to followers at this interval. The followers expect a heartbeat at this interval and consider a leader to have failed if it misses several in a row.

Type

int32

Default

500

Tags

advanced

--block_coalesce_close

Coalesce synchronization of data during CloseBlocks()

Type

bool

Default

false

Tags

experimental

--fs_data_dirs_full_disk_cache_seconds

Number of seconds we cache the full-disk status in the block manager. During this time, writes to the corresponding root path will not be attempted.

Type

int32

Default

30

Tags

evolving,advanced

--block_manager

Which block manager to use for storage. Valid options are 'file' and 'log'.

Type

string

Default

log

Tags

advanced

--log_block_manager_test_hole_punching

Ensure hole punching is supported by the underlying filesystem

Type

bool

Default

true

Tags

unsafe,advanced

--log_container_max_size

Maximum size (soft) of a log container

Type

uint64

Default

10737418240

Tags

advanced

--log_container_preallocate_bytes

Number of bytes to preallocate in a log container when creating new blocks. Set to 0 to disable preallocation

Type

uint64

Default

33554432

Tags

advanced

--rpc_acceptor_listen_backlog

Socket backlog parameter used when listening for RPC connections. This defines the maximum length to which the queue of pending TCP connections inbound to the RPC server may grow. If a connection request arrives when the queue is full, the client may receive an error. Higher values may help the server ride over bursts of new inbound connection requests.

Type

int32

Default

128

Tags

advanced

--rpc_default_keepalive_time_ms

If an RPC connection from a client is idle for this amount of time, the server will disconnect the client.

Type

int32

Default

65000

Tags

advanced

--rpc_ssl_certificate_authority

Path to the certificate authority to be used by the client side of the connection to verify the validity of the certificate presented by the server.

Type

string

Default

none

Tags

experimental

--rpc_ssl_private_key

Path to the private key to be used to complement the public key present in --ssl_server_certificate

Type

string

Default

none

Tags

experimental

--rpc_ssl_server_certificate

Path to the SSL certificate to be used for the RPC layer.

Type

string

Default

none

Tags

experimental

--server_require_kerberos

Whether to force all inbound RPC connections to authenticate with Kerberos

Type

bool

Default

false

Tags

experimental

--rpc_trace_negotiation

If enabled, dump traces of all RPC negotiations to the log

Type

bool

Default

false

Tags

experimental,advanced,runtime

--rpc_callback_max_cycles

The maximum number of cycles for which an RPC callback should be allowed to run without emitting a warning. (Advanced debugging option)

Type

int64

Default

100000000

Tags

runtime,advanced

--rpc_negotiation_timeout_ms

Timeout for negotiating an RPC connection.

Type

int64

Default

15000

Tags

runtime,advanced

--remember_clients_ttl_ms

Maximum amount of time, in milliseconds, the server "remembers" a client for the purpose of caching its responses. After this period without hearing from it, the client is no longer remembered and the memory occupied by its responses is reclaimed. Retries of requests older than 'remember_clients_ttl_ms' are treated as new ones.

Type

int64

Default

3600000

Tags

advanced

--remember_responses_ttl_ms

Maximum amount of time, in milliseconds, the server "remembers" a response to a specific request for a client. After this period has elapsed, the response may have been garbage collected and the client might get a response indicating the request is STALE.

Type

int64

Default

600000

Tags

advanced

--rpc_dump_all_traces

If true, dump all RPC traces at INFO level

Type

bool

Default

false

Tags

runtime,advanced

--rpc_max_message_size

The maximum size of a message that any RPC that the server will accept. Must be at least 1MB.

Type

int32

Default

52428800

Tags

runtime,advanced

--kerberos_principal

Kerberos principal that this daemon will log in as. The special token _HOST will be replaced with the FQDN of the local host.

Type

string

Default

kudu/_HOST

Tags

experimental

--keytab

Path to the Kerberos Keytab for this server

Type

string

Default

none

Tags

experimental

--web_log_bytes

The maximum number of bytes to display on the debug webserver’s log page

Type

int64

Default

1048576

Tags

runtime,advanced

--max_clock_sync_error_usec

Maximum allowed clock synchronization error as reported by NTP before the server will abort.

Type

int32

Default

10000000

Tags

runtime,advanced

--rpc_num_acceptors_per_address

Number of RPC acceptor threads for each bound address

Type

int32

Default

1

Tags

advanced

--rpc_num_service_threads

Number of RPC worker threads to run

Type

int32

Default

10

Tags

advanced

--rpc_service_queue_length

Default length of queue for incoming RPC requests

Type

int32

Default

50

Tags

advanced

--max_negotiation_threads

Maximum number of connection negotiation threads.

Type

int32

Default

50

Tags

advanced

--min_negotiation_threads

Minimum number of connection negotiation threads.

Type

int32

Default

0

Tags

advanced

--num_reactor_threads

Number of libev reactor threads to start.

Type

int32

Default

4

Tags

advanced

--metrics_log_interval_ms

Interval (in milliseconds) at which the server will dump its metrics to a local log file. The log files are located in the same directory as specified by the -log_dir flag. If this is not a positive value, then metrics logging will be disabled.

Type

int32

Default

0

Tags

advanced

--webserver_max_post_length_bytes

The maximum length of a POST request that will be accepted by the embedded web server.

Type

int32

Default

1048576

Tags

runtime,advanced

--webserver_doc_root

Files under <webserver_doc_root> are accessible via the debug webserver. Defaults to $KUDU_HOME/www, or if $KUDU_HOME is not set, disables the document root

Type

string

Default

none

Tags

advanced

--webserver_enable_doc_root

If true, webserver may serve static files from the webserver_doc_root

Type

bool

Default

true

Tags

advanced

--webserver_interface

Interface to start debug webserver on. If blank, webserver binds to 0.0.0.0

Type

string

Default

none

Tags

advanced

--webserver_num_worker_threads

Maximum number of threads to start for handling web server requests

Type

int32

Default

50

Tags

advanced

--budgeted_compaction_target_rowset_size

The target size for DiskRowSets during flush/compact when the budgeted compaction policy is used

Type

int32

Default

33554432

Tags

advanced,experimental

--compaction_approximation_ratio

Approximation ratio allowed for optimal compaction calculation. A value of 1.05 indicates that the policy may use an approximate result if it is known to be within 5% of the optimal solution.

Type

double

Default

1.0499999523162842

Tags

experimental

--deltafile_default_block_size

Block size for delta files. In the future, this may become configurable on a per-table basis.

Type

int32

Default

32768

Tags

experimental

--default_composite_key_index_block_size_bytes

Block size used for composite key indexes.

Type

int32

Default

4096

Tags

experimental

--tablet_delta_store_major_compact_min_ratio

Minimum ratio of sizeof(deltas) to sizeof(base data) before a major compaction can run (Advanced option)

Type

double

Default

0.10000000149011612

Tags

experimental

--tablet_delta_store_minor_compact_max

How many delta stores are required before forcing a minor delta compaction (Advanced option)

Type

int32

Default

1000

Tags

experimental

--tablet_bloom_block_size

Block size of the bloom filters used for tablet keys.

Type

int32

Default

4096

Tags

advanced

--tablet_bloom_target_fp_rate

Target false-positive rate (between 0 and 1) to size tablet key bloom filters. A lower false positive rate may reduce the number of disk seeks required in heavy insert workloads, at the expense of more space and RAM required for bloom filters.

Type

double

Default

9.9999997473787516e-05

Tags

advanced

--tablet_compaction_budget_mb

Budget for a single compaction

Type

int32

Default

128

Tags

experimental

--tablet_history_max_age_sec

Number of seconds to retain tablet history. Reads initiated at a snapshot that is older than this age will be rejected. To disable history removal, set to -1.

Type

int32

Default

900

Tags

advanced

--tablet_throttler_burst_factor

Burst factor for write RPC throttling. The maximum rate the throttler allows within a token refill period (100ms) equals burst factor multiply base rate.

Type

double

Default

1

Tags

experimental

--tablet_throttler_bytes_per_sec

Maximum write RPC IO rate (byte/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.

Type

int64

Default

0

Tags

experimental

--tablet_throttler_rpc_per_sec

Maximum write RPC rate (op/s) allowed for a tablet, write RPC exceeding this limit will be throttled. 0 means no limit.

Type

int64

Default

0

Tags

experimental

--flush_threshold_mb

Size at which MemRowSet flushes are triggered. A MRS can still flush below this threshold if it if hasn’t flushed in a while, or if the server-wide memory limit has been reached.

Type

int32

Default

1024

Tags

experimental

--tablet_transaction_memory_limit_mb

Maximum amount of memory that may be consumed by all in-flight transactions belonging to a particular tablet. When this limit is reached, new transactions will be rejected and clients will be forced to retry them. If -1, transaction memory tracking is disabled.

Type

int64

Default

64

Tags

advanced

--heartbeat_interval_ms

Interval at which the TS heartbeats to the master.

Type

int32

Default

1000

Tags

advanced

--heartbeat_max_failures_before_backoff

Maximum number of consecutive heartbeat failures until the Tablet Server backs off to the normal heartbeat interval, rather than retrying.

Type

int32

Default

3

Tags

advanced

--heartbeat_rpc_timeout_ms

Timeout used for the TS→Master heartbeat RPCs.

Type

int32

Default

15000

Tags

advanced

--scanner_ttl_ms

Number of milliseconds of inactivity allowed for a scannerbefore it may be expired

Type

int32

Default

60000

Tags

advanced

--scanner_batch_size_rows

The number of rows to batch for servicing scan requests.

Type

int32

Default

100

Tags

runtime,advanced

--scanner_default_batch_size_bytes

The default size for batches of scan results

Type

int32

Default

1048576

Tags

runtime,advanced

--scanner_max_batch_size_bytes

The maximum batch size that a client may request for scan results.

Type

int32

Default

8388608

Tags

runtime,advanced

--num_tablets_to_open_simultaneously

Number of threads available to open tablets during startup. If this is set to 0 (the default), then the number of bootstrap threads will be set based on the number of data directories. If the data directories are on some very fast storage device such as SSD or a RAID array, it may make sense to manually tune this.

Type

int32

Default

0

Tags

advanced

--trace_to_console

Trace pattern specifying which trace events should be dumped directly to the console

Type

string

Default

none

Tags

experimental

--never_fsync

Never fsync() anything to disk. This is used by certain test cases to speed up runtime. This is very unsafe to use in production.

Type

bool

Default

false

Tags

unsafe,advanced

--suicide_on_eio

Kill the process if an I/O operation results in EIO

Type

bool

Default

true

Tags

advanced

--writable_file_use_fsync

Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk.

Type

bool

Default

false

Tags

advanced

--disable_core_dumps

Disable core dumps when this process crashes.

Type

bool

Default

false

Tags

evolving,advanced

--log_target_replay_size_mb

The target maximum size of logs to be replayed at startup. If a tablet has in-memory operations that are causing more than this size of logs to be retained, then the maintenance manager will prioritize flushing these operations to disk.

Type

int64

Default

1024

Tags

experimental

--memory_limit_soft_percentage

Percentage of the hard memory limit that this daemon may consume before memory throttling of writes begins. The greater the excess, the higher the chance of throttling. In general, a lower soft limit leads to smoother write latencies but decreased throughput, and vice versa for a higher soft limit.

Type

int32

Default

60

Tags

advanced

--memory_limit_warn_threshold_percentage

Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged.

Type

int32

Default

98

Tags

advanced

--tcmalloc_max_free_bytes_percentage

Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory.

Type

int32

Default

10

Tags

advanced

--metrics_retirement_age_ms

The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option)

Type

int32

Default

120000

Tags

advanced,runtime

--local_ip_for_outbound_sockets

IP to bind to when making outgoing socket connections. This must be an IP address of the form A.B.C.D, not a hostname. Advanced parameter, subject to change.

Type

string

Default

none

Tags

experimental

--nvm_cache_allocation_retry_count

The number of times that the NVM cache will retry attempts to allocate memory for new entries. In between attempts, a cache entry will be evicted.

Type

int32

Default

10

Tags

experimental,advanced

--nvm_cache_path

The path at which the NVM cache will try to allocate its memory. This can be a tmpfs or ramfs for testing purposes.

Type

string

Default

/vmem

Tags

experimental

--drop_log_memory

Drop in-memory buffers of log contents. Logs can grow very quickly and they are rarely read before they need to be evicted from memory. Instead, drop them from memory as soon as they are flushed to disk.

Type

bool

Default

true

Tags

runtime,advanced

--log_backtrace_at

Emit a backtrace when logging at file:linenum.

Type

string

Default

none

Tags

advanced

--logbuflevel

Buffer log messages logged at this level or lower (-1 means don’t buffer; 0 means buffer INFO only; …​)

Type

int32

Default

0

Tags

runtime,advanced

--logbufsecs

Buffer log messages for at most this many seconds

Type

int32

Default

30

Tags

runtime,advanced