All YB-TServer flags

List of all YB-TServer process flags for configuring YugabyteDB using yb-tserver

Use the yb-tserver binary and its flags to configure the YB-TServer server. The yb-tserver executable file is located in the bin directory of YugabyteDB home. For more detailed information about flags commonly used for production deployments and instructions on using yb-tserver, refer to the yb-tserver documentation.

For a list of all YB-Master flags, see All YB-Master flags.

2.23.1.0

abort_active_txns_during_xrepl_bootstrap

Abort active transactions during xcluster and cdc bootstrapping. Inconsistent replicated data may be produced if this is disabled. (Default: true - advanced, runtime)

aborted_intent_cleanup_max_batch_size

Number of transactions to collect for possible cleanup. (Default: 256)

aborted_intent_cleanup_ms

Duration in ms after which to check if a transaction is aborted. (Default: 60000 - runtime)

aggressive_compaction_for_read_amp

Determines if we should compact aggressively to reduce read amplification based on number of files alone, without regards to relative sizes of the SSTable files. (Default: false)

allow_encryption_at_rest

Whether or not to allow encryption at rest to be enabled. Toggling this flag does not turn on or off encryption at rest, but rather allows or disallows a user from enabling it on in the future. (Default: true)

allow_insecure_connections

Whether we should allow insecure connections. (Default: true)

allow_preempting_compactions

Whether a compaction may be preempted in favor of another compaction with higher priority (Default: true)

allow_sensitive_data_in_logs

Allows potentially-sensitive debug data to be written unencrypted into logs. (Default: false - runtime)

allowed_preview_flags_csv

CSV formatted list of Preview flag names. Flags that are tagged Preview cannot be modified unless they have been added to this list. By adding flags to this list, you acknowledge any risks associated with modifying them. (Default: None)

apply_changes_max_send_rate_mbps

Server-wide max apply rate for xcluster traffic. (Default: 100 - runtime)

apply_intents_task_injected_delay_ms

Inject such delay before applying intents for large transactions. Could be used to throttle the apply speed. (Default: 0)

async_replication_idle_delay_ms

How long to delay between polling when we expect no data at the destination. (Default: 100 - runtime)

async_replication_max_idle_wait

Maximum number of consecutive empty GetChanges until the poller backs off to the idle interval, rather than immediately retrying. (Default: 3 - runtime)

async_replication_polling_delay_ms

How long to delay in ms between applying and polling. (Default: 0 - runtime)

auto_compact_check_interval_sec

The interval at which the full compaction task checks for tablets eligible for compaction, in seconds. 0 indicates that the background task is fully disabled. (Default: 60)

auto_compact_memory_cleanup_interval_sec

The frequency with which we should check whether cleanup is needed in the full compaction manager. -1 indicates we should disable clean up. (Default: 3600 - runtime)

auto_compact_min_obsolete_keys_found

Minimum number of keys read in the window for an automatic full compaction to be triggered. (Default: 10000 - runtime)

auto_compact_min_wait_between_seconds

Minimum wait time between automatic full compactions. Also applies to scheduled full compactions. (Default: 0 - runtime)

auto_compact_percent_obsolete

Percentage of obsolete keys (over total keys) read over a window of time that trigger an automatic full compaction on a tablet. Only keys that are past their history retention (and thus can be garbage collected) are considered. (Default: 99 - runtime)

auto_compact_stat_window_seconds

Window of time (seconds) over which DocDB read statistics are analyzed for the purposes of triggering full compactions automatically to improve read performance. Will always be rounded up to be a multiple of auto_compact_check_interval_sec. (Default: 300 - runtime)

auto_flags_apply_delay_ms

Number of milliseconds after which a new AutoFlag config is applied. yb-tservers that have not heartbeated to yb-master within this duration cannot replicate data to XCluster targets. The value must be at least twice the heartbeat_interval_ms. (Default: 10000 - advanced, stable, runtime)

auto_flags_load_from_master_backoff_increment_ms

Number of milliseconds added to the delay between reties of fetching AutoFlags config from master leader. This delay is applied after the RPC reties have been exhausted. (Default: 100 - advanced, stable)

auto_flags_load_from_master_max_backoff_sec

Maximum number of seconds to delay between reties of fetching AutoFlags config from master leader. This delay is applied after the RPC reties have been exhausted. (Default: 3 - advanced, stable)

auto_promote_nonlocal_transactions_to_global

Automatically promote transactions touching data outside of region to global. (Default: true - runtime)

automatic_compaction_extra_priority

Assigns automatic compactions extra priority when automatic tablet splits are enabled. This deprioritizes manual compactions including those induced by the tserver (e.g. post-split compactions). Suggested value between 0 and 50. (Default: 50)

avoid_abort_after_sealing_ms

If transaction was only sealed, we will try to abort it not earlier than this period in milliseconds. (Default: 20)

backfill_index_client_rpc_timeout_ms

Timeout for BackfillIndex RPCs from client to master. (Default: 86400000 - advanced)

backfill_index_rate_rows_per_sec

Rate of at which the indexed table's entries are populated into the index table during index backfill. This is a per-tablet flag, i.e. a tserver responsible for multiple tablets could be processing more than this. (Default: 0 - advanced, runtime)

backfill_index_timeout_grace_margin_ms

The time we give the backfill process to wrap up the current set of writes and return successfully the RPC with the information about how far we have processed the rows. (Default: -1 - advanced, runtime)

backfill_index_write_batch_size

The batch size for backfilling the index. (Default: 128 - advanced, runtime)

backpressure_recovery_period_ms

Once we hit a backpressure/service-overflow we will consider dropping stale requests for this duration (in ms) (Default: 600000 - advanced, runtime)

batch_tablet_metrics_update

Batch update of rocksdb and tablet metrics to once per request rather than updating immediately. (Default: true - runtime)

bg_superblock_flush_interval_secs

The interval at which tablet superblocks are flushed to disk (if dirty) by a background thread. Applicable only when lazily_flush_superblock is enabled. 0 indicates that the background task is fully disabled. (Default: 60 - runtime)

big_shared_memory_allocated_limit

The limit for all allocated big shared memory segments in bytes. (Default: 134217728)

big_shared_memory_segment_expiration_time_ms

Time to release unused allocated big memory segment. (Default: 5000 - runtime)

big_shared_memory_segment_session_expiration_time_ms

Time to release unused allocated big memory segment from session to pool. (Default: 5000 - runtime)

binary_call_parser_reject_on_mem_tracker_hard_limit

Whether to reject/ignore calls on hitting mem tracker hard limit. (Default: true)

block_restart_interval

Controls the number of keys to look at for computing the diff encoding. (Default: 16)

bytes_durable_wal_write_mb

Amount of data in MB after which the Log/WAL should explicitly call fsync(). If 0 fsysnc() is not called. (Default: 1 - stable)

bytes_remote_bootstrap_durable_write_mb

Explicitly call fsync after downloading the specified amount of data in MB during a remote bootstrap session. If 0 fsync() is not called. (Default: 1024)

cache_overflow_single_touch

Whether to enable overflow of single touch cache into the multi touch cache allocation (Default: true)

cache_single_touch_ratio

Fraction of the cache dedicated to single-touch items (Default: 0.20000000000000001)

callhome_collection_level

Level of details sent by callhome (Default: medium)

callhome_enabled

Enables callhome feature that sends analytics data to yugabyte (Default: true - runtime)

callhome_interval_secs

How often to run callhome (Default: 3600 - runtime)

callhome_tag

Tag to be inserted in the json sent to FLAGS_callhome_url. This tag is used by itest to specify that the data generated by callhome should be discarded by the receiver. (Default: None)

callhome_url

URL of callhome server (Default: https://diagnostics.yugabyte.com)

callsite_profile_stack_trace_threshold_usec

Threshold, in microseconds, for printing stack traces for profiled call sites that take longer than this amount of time. Regardless of this setting, stack traces at any given call site will not be printed more than once a second. Set to 0 to disable stack traces. (Default: 0 - runtime)

cdc_checkpoint_opid_interval_ms

Interval up to which CDC consumer's checkpoint is considered for retaining log cache.If we haven't received an updated checkpoint from CDC consumer within the interval specified by cdc_checkpoint_opid_interval, then log cache does not consider that consumer while determining which op IDs to evict. (Default: 60000)

cdc_consumer_handler_thread_pool_size

Deprecated (Default: 0 - deprecated, runtime)

cdc_consumer_use_proxy_forwarding

When enabled, read requests from the XClusterConsumer that go to the wrong node are forwarded to the correct node by the Producer. (Default: false - runtime)

cdc_enable_consistent_records

If 'true' we will ensure that the records are order by the commit_time. (Default: true)

cdc_enable_replicate_intents

Deprecated (Default: false - deprecated, runtime)

cdc_force_remote_tserver

Avoid local tserver apply optimization for xCluster and force remote RPCs. (Default: false - runtime)

cdc_get_changes_free_rpc_ratio

When the TServer only has this percentage of RPCs remaining because the rest are GetChanges, reject additional requests to throttle/backoff and prevent deadlocks. (Default: 0.10000000000000001)

cdc_immediate_transaction_cleanup

Clean up transactions from memory after apply, even if its changes have not yet been streamed by CDC. (Default: false - runtime)

cdc_intent_retention_ms

Interval up to which CDC consumer's checkpoint is considered for retaining intents.If we haven't received an updated checkpoint from CDC consumer within the interval specified by cdc_checkpoint_opid_interval, then CDC does not consider that consumer while determining which op IDs to delete from the intent. (Default: 14400000 - advanced, runtime)

cdc_max_apply_batch_num_records

Deprecated (Default: 0 - deprecated, runtime)

cdc_max_apply_batch_size_bytes

Deprecated (Default: 0 - deprecated, runtime)

cdc_max_stream_intent_records

Max number of intent records allowed in single cdc batch. (Default: 1680)

cdc_min_replicated_index_considered_stale_secs

If cdc_min_replicated_index hasn't been replicated in this amount of time, we reset itsvalue to max int64 to avoid retaining any logs (Default: 900)

cdc_populate_end_markers_transactions

If 'true', we will also send 'BEGIN' and 'COMMIT' records for both single shard and multi shard transactions (Default: true - runtime)

cdc_populate_safepoint_record

If 'true' we will also send a 'SAFEPOINT' record at the end of each GetChanges call. (Default: true - runtime)

cdc_read_rpc_timeout_ms

Timeout used for CDC read rpc calls. Reads normally occur cross-cluster. (Default: 30000 - advanced)

cdc_read_safe_deadline_ratio

When the heartbeat deadline has this percentage of time remaining, the master should halt tablet report processing so it can respond in time. (Default: 0.10000000000000001 - runtime)

cdc_read_wal_segment_by_segment

When this flag is set to true, GetChanges will read the WAL segment by segment. If valid records are found in the first segment, GetChanges will return these records in response. If no valid records are found then next segment will be read. (Default: false - runtime)

cdc_resolve_intent_lag_threshold_ms

The lag threshold in milli seconds between the hybrid time returned by GetMinStartTimeAmongAllRunningTransactions and LeaderSafeTime, when we decide the ConsistentStreamSafeTime for CDCSDK by resolving all committed intetns (Default: 300000)

cdc_snapshot_batch_size

Batch size for the snapshot operation in CDC (Default: 250 - runtime)

cdc_state_checkpoint_update_interval_ms

Rate at which CDC state's checkpoint is updated. (Default: 15000 - runtime)

cdc_state_table_num_tablets

Number of tablets to use when creating the CDC state table. 0 to use the same default num tablets as for regular tables. (Default: 0 - runtime)

cdc_stream_records_threshold_size_bytes

The threshold for the size of the response of a GetChanges call. The actual size may be a little higher than this value. (Default: 4194304 - runtime)

cdc_transaction_timeout_ms

Deprecated (Default: 0 - deprecated, runtime)

cdc_wal_retention_time_secs

WAL retention time in seconds to be used for tables which have a xCluster, or CDCSDK outbound stream. (Default: 14400 - runtime)

cdc_write_post_apply_metadata

Write post-apply transaction metadata to intentsdb for transaction that have been applied but have not yet been streamed by CDC. (Default: true - stable, auto, runtime)

cdc_write_rpc_timeout_ms

Timeout used for CDC write rpc calls. Writes normally occur intra-cluster. (Default: 30000 - advanced)

cdc_ybclient_reactor_threads

Deprecated (Default: 0 - deprecated, runtime)

cdcsdk_enable_cleanup_of_expired_table_entries

When enabled, Update Peers and Metrics will look for entries in the state table that have either become not of interest or have expired for a stream. The cleanup logic will then update these entries in cdc_state table and also move the corresponding table's entry to unqualified tables list in stream metadata. (Default: true - stable, auto, runtime)

cdcsdk_enable_dynamic_table_addition_with_table_cleanup

This flag needs to be true in order to support addition of dynamic tables along with removal of not of interest/expired tables from a CDCSDK stream. (Default: true - advanced, stable, auto, runtime)

cdcsdk_enable_dynamic_table_support

This flag can be used to switch the dynamic addition of tables ON or OFF. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'cdcsdk_enable_dynamic_table_support' must be set in --allowed_preview_flags_csv. (Default: false - preview, runtime)

cdcsdk_max_consistent_records

Controls the maximum number of records sent in GetConsistentChanges response (Default: 500 - runtime)

cdcsdk_max_expired_tables_to_clean_per_run

This flag determines the maximum number of tables to be cleaned up per run of UpdatePeersAndMetrics. Since a lot of tables can become not of interest at the same time, this flag is used to prevent storming of cleanup requests to master. When the flag value is 1, the number of cleanup requests sent will be min(num_tables_to_cleanup, num_of_nodes) (Default: 1 - runtime)

cdcsdk_publication_list_refresh_interval_secs

Interval in seconds at which the table list in the publication will be refreshed (Default: 3600 - runtime)

cdcsdk_retention_barrier_no_revision_interval_secs

Duration for which CDCSDK retention barriers cannot be revised from the cdcsdk_block_barrier_revision_start_time (Default: 120 - runtime)

cdcsdk_tablet_not_of_interest_timeout_secs

Timeout after which it can be inferred that tablet is not of interest for the stream (Default: 14400 - runtime)

cdcsdk_vwal_getchanges_resp_max_size_bytes

Max size (in bytes) of GetChanges response for all GetChanges requests sent from Virtual WAL. (Default: 1048576 - runtime)

cdcsdk_wal_reads_deadline_buffer_secs

This flag determines the buffer time from the deadline at which we must stop reading the WAL messages and start processing the records we have read till now. (Default: 5 - runtime)

cert_file_pattern

Pattern used for certificate file (Default: node.$0.crt)

cert_node_filename

The file name that will be used in the names of the node certificates and keys. These files will be named : 'node.{cert_node_filename}.{key|crt}'. If this flag is not set, then --server_broadcast_addresses will be used if it is set, and if not, --rpc_bind_addresses will be used. (Default: None)

certs_dir

Directory that contains certificate authority, private key and certificates for this server. By default 'certs' subdir in data folder is used. (Default: None)

certs_for_cdc_dir

The parent directory of where all certificates for xCluster source universes will be stored, for when the source and target universes use different certificates. Place the certificates for each source universe in <certs_for_cdc_dir>/<source_cluster_uuid>/*. (Default: None)

certs_for_client_dir

Directory that contains certificate authority, private key and certificates for this server that should be used for client to server communications. When empty, the same dir as for server to server communications is used. (Default: None)

change_metadata_backoff_init_exponent

Initial exponent of 2 in the exponential backoff loop that checks if a change metadata operation is finished. Only used for colocated table creation for now. (Default: 1 - runtime)

change_metadata_backoff_max_jitter_ms

Max jitter (in ms) in the exponential backoff loop that checks if a change metadata operation is finished. Only used for colocated table creation for now. (Default: 0 - runtime)

check_pg_object_id_allocators_interval_secs

Interval at which pg object id allocators are checked for dropped databases. (Default: 10800 - advanced, runtime)

cipher_list

Define the list of available ciphers (TLSv1.2 and below). (Default: None)

ciphersuites

Define the available TLSv1.3 ciphersuites. (Default: None)

cleanup_intents_sst_files

Cleanup intents files that are no more relevant to any running transaction. (Default: true)

cleanup_metrics_interval_sec

The tick interval time for the metrics cleanup background task. If set to 0, it disables the background task. (Default: 60)

cleanup_split_tablets_interval_sec

Interval at which tablet manager tries to cleanup split tablets which are no longer needed. Setting this to 0 disables cleanup of split tablets. (Default: 60)

client_read_write_timeout_ms

Timeout for client read and write operations. (Default: 60000)

clock_skew_force_crash_bound_usec

If the clock skew larger than this amount (microseconds) is observed, we will force a crash regardless of the value of fail_on_out_of_range_clock_skew. This is useful for avoiding really large hybrid clock jumps. Set to 0 to disable the check. Note that this check is only preformed for clock skew greater than max_clock_skew_usec. (Default: 60000000)

clockbound_clock_error_estimate_usec

An estimate of the clock error in microseconds. When the estimate is too low and the reported clock error exceeds the estimate, the database timestamps fall behind real time. When the estimate is too high, the database is more prone to false read restarts. (Default: 1000)

clockbound_mixed_clock_mode

When true, use max_clock_skew_usec as read time uncertainty interval (same as WallClock). When false, use low clock errors reported by AWS clockbound to compute the read time uncertainty interval. (Default: false - runtime)

clockbound_num_ctxs

Number of clockbound contexts to open. When set to 0, the number of contexts is automatically determined. This is a performance optimization to reduce contention on the clockbound context. (Default: 0)

collect_end_to_end_traces

If true, collected traces includes information for sub-components potentially running on a different server. (Default: false - advanced, runtime)

collect_update_consensus_traces

If true, collected traces from followers for UpdateConsensus running on a different server. (Default: false - advanced, runtime)

colorlogtostderr

color messages logged to stderr (if supported by terminal) (Default: false - runtime, stable)

compaction_priority_start_bound

Compaction task of DB that has number of SST files less than specified will have priority 0. (Default: 10)

compaction_priority_step_size

Compaction task of DB that has number of SST files greater that compaction_priority_start_bound will get 1 extra priority per every compaction_priority_step_size files. (Default: 5)

compression_type

On-disk compression type to use in RocksDB.By default, Snappy is used if supported. (Default: Snappy)

consensus_force_recover_from_stuck_peer_call

Set this flag to true in addition to consensus_stuck_peer_call_threshold_ms to automatically recover from stuck RPC call. (Default: false - advanced, runtime)

consensus_lagging_follower_threshold

Number of retransmissions at tablet leader to mark a follower as lagging. -1 disables the feature. (Default: 10 - advanced, runtime)

consensus_log_scoped_watch_delay_append_threshold_ms

If consensus log append takes longer than this, the kernel watchdog will print out a stack trace. (Default: 1000 - advanced, runtime)

consensus_log_scoped_watch_delay_callback_threshold_ms

If calling consensus log callback(s) take longer than this, the kernel watchdog will print out a stack trace. (Default: 1000 - advanced, runtime)

consensus_max_batch_size_bytes

The maximum per-tablet RPC batch size when updating peers. The sum of consensus_max_batch_size_bytes and 1KB should be less than rpc_max_message_size (Default: 4194304 - advanced, runtime)

consensus_rpc_timeout_ms

Timeout used for all consensus internal RPC communications. (Default: 3000 - advanced)

consensus_stuck_peer_call_threshold_ms

Time to wait after timeout before considering an RPC call as stuck. (Default: 10000 - advanced, runtime)

consistent_restore

Whether to enable consistent restoration of snapshots (Default: true)

cql_allow_static_column_index

Raise unsupported error when creating an index on static columns (Default: false)

cql_always_return_metadata_in_execute_response

Force returning the table metadata in the EXECUTE request response (Default: false)

cql_check_table_schema_in_paging_state

Return error for prepared SELECT statement execution if the table was altered during the prepared statement execution. (Default: true)

cql_dump_statement_metrics_limit

Limit the number of statements that are dumped at the /statements endpoint. (Default: 5000 - runtime)

cql_limit_nodelist_refresh_to_subscribed_conns

When enabled, the node list refresh events will only be sent to the connections which have subscribed to receiving the topology change events. (Default: true - advanced, runtime)

cql_nodelist_refresh_interval_secs

Interval after which a node list refresh event should be sent to all CQL clients. (Default: 300 - advanced, runtime)

cql_prepare_child_threshold_ms

Timeout if preparing for child transaction takes longerthan the prescribed threshold. (Default: 2000)

cql_processors_limit

Limit number of CQL processors. Positive means absolute limit. Negative means number of processors per 1GB of root mem tracker memory limit. 0 - unlimited. (Default: -4000)

cql_proxy_bind_address

Address to bind the CQL proxy to (Default: None)

cql_proxy_broadcast_rpc_address

RPC address to broadcast to other nodes. This is the broadcast_address used in the system.local table (Default: None)

cql_proxy_webserver_port

Webserver port for CQL proxy (Default: 12000)

cql_raise_index_where_clause_error

Raise unsupported error if where clause is specified for create index (Default: false)

cql_rpc_keepalive_time_ms

If an RPC connection from a client is idle for this amount of time, the server will disconnect the client. Setting flag to 0 disables this clean up. (Default: 120000 - advanced)

cql_rpc_memory_limit

CQL RPC memory limit (Default: 0)

cql_server_always_send_events

All CQL connections automatically subscribed for all CQL events. (Default: false)

cql_service_max_prepared_statement_size_bytes

The maximum amount of memory the CQL proxy should use to maintain prepared statements. 0 or negative means unlimited. (Default: 134217728)

cql_service_queue_length

RPC queue length for CQL service (Default: 10000 - advanced)

cql_system_query_cache_empty_responses

Whether to cache empty responses from the master. (Default: true)

cql_system_query_cache_stale_msecs

Maximum permitted staleness for the system query cache. <= 0 permits infinite staleness. (Default: 60000)

cql_system_query_cache_tables

Tables to cache connection data for. Entries are semicolon-delimited, in the format <keyspace>.<table>. (Default: None)

cql_table_is_transactional_by_default

When the 'transactions' property is not specified at CREATE TABLE time for a YCQL table, this flag determines the default setting for whether the table is transactional or not. (Default: false - advanced)

cql_unprepared_stmts_entries_limit

Limit the number of unprepared statements that are being tracked. (Default: 500 - runtime)

cql_update_system_query_cache_msecs

How often the system query cache should be updated. <= 0 disables caching. (Default: 0)

cql_use_metadata_cache_for_schema_version_check

Use the internal Table Metadata Cache in TS to check the Table Schema Version when processing the YCQL PREPARE query.If disabled - the Table Schema Version is requested from the Master. (Default: true - advanced, runtime)

cql_ybclient_reactor_threads

Deprecated (Default: 0 - deprecated, runtime)

data_size_metric_updater_interval_sec

The interval time for the data size metric updater background task. If set to 0, it disables the background task. (Default: 60)

db_block_cache_num_shard_bits

-1 indicates a dynamic scheme that evaluates to 4 if number of cores is less than or equal to 16, 5 for 17-32 cores, 6 for 33-64 cores and so on. If the value is overridden, that value would be used in favor of the dynamic scheme. The maximum permissible value is 19. (Default: -1 - advanced, runtime)

db_block_cache_size_bytes

Size of the shared RocksDB block cache (in bytes). A value of -1 specifies to instead use a percentage of this daemon's hard memory limit; see --db_block_cache_size_percentage for the percentage used. A value of -2 disables the block cache. (Default: -1)

db_block_cache_size_percentage

Percentage of our hard memory limit to use for the shared RocksDB block cache, if --db_block_cache_size_bytes is -1. The special value -1000 means to instead use a recommended percentage determined in part by the amount of RAM available. The special value -3 means to use a older default that does not take the amount of RAM into account. The percentage used due to the special values may depend on whether this is a TServer or master daemon. (Default: -1000)

db_block_size_bytes

Size of RocksDB data block (in bytes). (Default: 32768)

db_filter_block_size_bytes

Size of RocksDB filter block (in bytes). (Default: 65536)

db_index_block_size_bytes

Size of RocksDB index block (in bytes). (Default: 32768)

db_max_flushing_bytes

The limit for the number of bytes in immutable mem tables. After reaching this limit new writes are blocked. 0 - unlimited. (Default: 262144000)

db_min_keys_per_index_block

Minimum number of keys per index block. (Default: 100)

db_write_buffer_size

Size of RocksDB write buffer (in bytes). -1 to use default. (Default: -1)

ddl_verification_timeout_multiplier

Multiplier for the timeout used for DDL verification. DDL verification may involve waiting for DDL operations to finish at the yb-master. This is a multiplier for default_admin_operation_timeout which is the timeout used for a single DDL operation (Default: 5 - runtime)

default_memory_limit_to_ram_ratio

The percentage of available RAM to use if --memory_limit_hard_bytes is 0. The special value -1000 means to instead use a recommended percentage determined in part by the amount of RAM available. (Default: -1000)

delete_intents_sst_files

Delete whole intents .SST files when possible. (Default: true)

detect_duplicates_for_retryable_requests

Enable tracking of write requests that prevents the same write from being applied twice. (Default: true)

disable_alter_vs_write_mutual_exclusion

A safety switch to disable the changes from D8710 which makes a schema operation take an exclusive lock making all write operations wait for it. (Default: false - advanced, runtime)

disable_auto_flags_management

Disables AutoFlags management. A safety switch to turn off automatic promotion of AutoFlags. More information about AutoFlags can be found in https://github.com/yugabyte/yugabyte-db/blob/master/architecture/design/auto_flags.md. Use at your own risk! (Default: false - unsafe, advanced)

disable_clock_sync_error

Whether or not we should keep running if we detect a clock synchronization issue. (Default: true - advanced)

disable_heartbeat_send_involved_tablets

If disabled, do not send involved tablets on heartbeats for pending transactions. This behavior is needed to support fetching old transactions and their involved tablets in order to support yb_lock_status/pg_locks. (Default: false - runtime)

disable_hybrid_scan

Deprecated (Default: false - deprecated, runtime)

display_bind_params_in_cql_details

Whether to show bind params for CQL calls details in the RPCZ dump. (Default: true)

dns_cache_expiration_ms

Time to store DNS resolution results in cache. (Default: 60000 - runtime)

dns_cache_failure_expiration_ms

Time before DNS resolution retry in case of failure. (Default: 2000 - runtime)

docdb_ht_filter_conflict_with_committed

Use hybrid time SST filter when checking for conflicts with committed transactions. (Default: true - runtime)

docdb_ht_filter_intents

Use hybrid time SST filter when scanning intents. (Default: true - runtime)

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. (Default: true - runtime, advanced)

dump_certificate_entries

Whether we should dump certificate entries. (Default: false)

dump_dbimpl_info

Dump RocksDB info during constructor. (Default: false)

dump_flags_xml

Dump a XLM document describing all of gFlags used in this binary. Differs from helpxml by displaying the current runtime value as the default instead of the hard coded values from the flag definitions. (Default: false - advanced, stable)

dump_heap_snapshot_max_call_stacks

The maximum number of call stacks to log from TCMalloc's heap snapshot when TryDumpSnapshot is called. (Default: 10 - runtime)

dump_heap_snapshot_min_interval_sec

The minimum time to wait between dumping heap snapshots. A value of <= 0 means the logging is disabled. (Default: 600 - runtime)

dump_lock_keys

Whether to add keys to error message when lock batch timed out (Default: true)

dump_metrics_to_trace

Whether to dump changed metrics in tracing. (Default: false - runtime)

dump_transactions

Dump transactions data in debug binary format. (Default: false - runtime)

dump_transactions_chunk_size

Start new transaction dump when current one reaches specified limit. (Default: 10737418240 - runtime)

dump_transactions_gzip

Whether transaction dump should be compressed in GZip format. (Default: 1 - runtime)

durable_wal_write

Whether the Log/WAL should explicitly call fsync() after each write. (Default: false - stable)

emulate_redis_responses

If emulate_redis_responses is false, we hope to get slightly better performance by just returning OK for commands that might require us to read additional records viz. SADD, HSET, and HDEL. If emulate_redis_responses is true, we read the required records to compute the response as specified by the official Redis API documentation. https://redis.io/commands (Default: true)

enable_automatic_tablet_splitting

If false, disables automatic tablet splitting driven from the yb-master side. (Default: true - stable, auto, runtime)

enable_block_based_table_cache_gc

Set to true to enable block based table garbage collector. (Default: false - runtime)

enable_callsite_profile

Enable counting and timing of function calls enclosed in the YB_PROFILE macro. The results are shown in the /pprof/callsite_profile web UI page. (Default: false - runtime)

enable_callsite_profile_timing

In addition to CPU cycle counts, also measure the actual time in microseconds in profiled call sites. (Default: false - runtime)

enable_cdc_client_tablet_caching

Enable caching the tablets found by client. (Default: false - runtime)

enable_cdc_state_table_caching

Enable caching the cdc_state table schema. (Default: true - runtime)

enable_cdcsdk_lag_collection

When enabled, vlog containing the lag for the getchanges call as well as last commit record in response will be printed. (Default: false - runtime)

enable_cdcsdk_setting_get_changes_response_byte_limit

When enabled, we'll consider the proto field getchanges_resp_max_size_bytes in GetChangesRequestPB to limit the size of GetChanges response. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'enable_cdcsdk_setting_get_changes_response_byte_limit' must be set in --allowed_preview_flags_csv. (Default: false - preview, runtime)

enable_check_retryable_request_timeout

Whether to check if retryable request exceeds the timeout. (Default: true)

enable_collect_cdc_metrics

Enable collecting cdc and xcluster metrics. (Default: true - runtime)

enable_consensus_exponential_backoff

Whether exponential backoff based on number of retransmissions at tablet leader for number of entries to replicate to lagging follower is enabled. (Default: true - advanced, runtime)

enable_copy_retryable_requests_from_parent

Whether to copy retryable requests from parent tablet when openingthe child tablet (Default: true - runtime)

enable_data_block_fsync

Whether to enable fsync() of data blocks, metadata, and their parent directories. Disabling this flag may cause data loss in the event of a system crash. (Default: true - unsafe)

enable_deadlock_detection

Deprecated (Default: false - deprecated, runtime)

enable_direct_local_tablet_server_call

Enable direct call to local tablet server (Default: true - advanced)

enable_flush_retryable_requests

If enabled, will flush bootstrap state structure to the disk when roll the log segment, which helps speedup bootstrap process (Default: true - stable, auto, runtime)

enable_history_cutoff_propagation

Should we use history cutoff propagation (true) or calculate it locally (false). (Default: false)

enable_intentsdb_page

Enable displaying the contents of intentsdb page. (Default: false)

enable_leader_failure_detection

Whether to enable failure detection of tablet leaders. If enabled, attempts will be made to elect a follower as a new leader when the leader is detected to have failed. (Default: true - unsafe)

enable_lease_revocation

Enables lease revocation mechanism (Default: true)

enable_log_cache_gc

Set to true to enable log cache garbage collector. (Default: true)

enable_log_retention_by_op_idx

If true, logs will be retained based on an op id passed by the cdc service (Default: true - runtime)

enable_maintenance_manager

Enable the maintenance manager, runs compaction and tablet cleaning tasks. (Default: true - unsafe)

enable_metacache_partial_refresh

If set, we will attempt to refresh the tablet metadata cache with a TabletConsensusInfoPB in the tablet invoker. (Default: true - runtime)

enable_multi_raft_heartbeat_batcher

If true, enables multi-Raft batching of raft heartbeats. (Default: false)

enable_ondisk_compression

Determines whether SSTable compression is enabled or not. (Default: true)

enable_pg_cron

Enables the pg_cron extension. Jobs will be run on a single tserver node. The node should be assumed to be selected randomly. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'enable_pg_cron' must be set in --allowed_preview_flags_csv. (Default: false - preview)

enable_pg_savepoints

Deprecated (Default: false - deprecated, runtime)

enable_process_lifetime_heap_profiling

WARNING: This flag will cause tcmalloc to sample every allocation. This can significantly impact performance. For a lighter approach, use sampling (profiler_sample_freq_bytes). This option is only supported with gperftools tcmalloc. Enables heap profiling for the lifetime of the process. Profile output will be stored in the directory specified by -heap_profile_path, and enabling this option will disable the on-demand profiling in /pprof/heap. (Default: false - advanced, stable)

enable_process_lifetime_heap_sampling

Deprecated (Default: false - deprecated, runtime)

enable_redis_auth

Enable AUTH for the Redis service (Default: true)

enable_restart_transaction_status_tablets_first

Set to true to prioritize bootstrapping transaction status tablets first. (Default: true)

enable_rpc_keepalive

Whether to enable RPC keepalive mechanism (Default: true)

enable_rwc_lock_debugging

Enable debug logging for RWC lock. This can hurt performance significantly since it causes us to capture stack traces on each lock acquisition. (Default: false - advanced, runtime)

enable_schema_packing_gc

Whether schema packing GC is enabled. (Default: true)

enable_single_record_update

Enable packing updates corresponding to a row in single CDC record (Default: true - runtime)

enable_stream_compression

Whether it is allowed to use stream compression. (Default: true)

enable_tablet_orphaned_block_deletion

Deprecated (Default: false - deprecated, runtime)

enable_tracing

Flag to enable/disable tracing across the code. (Default: false - advanced, runtime)

enable_transaction_sealing

Whether transaction sealing is enabled. (Default: false)

enable_uncovered_index_select

Enable executing select statements using uncovered index (Default: true - advanced)

enable_update_local_peer_min_index

Enable each local peer to update its own log checkpoint instead of the leader updating all peers. (Default: true - runtime)

enable_wait_queues

If true, enable wait queues that help provide Wait-on-Conflict behavior during conflict resolution whenever required. Enabling this flag enables deadlock detection as well. (Default: true - advanced)

enable_xcluster_auto_flag_validation

Enables validation of AutoFlags between the xcluster universes (Default: true - stable, auto, runtime)

enable_xcluster_stat_collection

When enabled, stats are collected from xcluster streams for reporting purposes. (Default: true - runtime)

enable_xcluster_timed_based_wal_retention

If true, enable time-based WAL retention for tables with xCluster by using --cdc_wal_retention_time_secs. (Default: true - runtime)

enable_ysql

Enable YSQL on the cluster. This will cause yb-master to initialize sys catalog tablet from an initial snapshot (in case --initial_sys_catalog_snapshot_path is specified or can be auto-detected). Also each tablet server will start a PostgreSQL server as a child process. (Default: true)

enable_ysql_conn_mgr

Enable Ysql Connection Manager for the cluster. Tablet Server will start a Ysql Connection Manager process as a child process. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'enable_ysql_conn_mgr' must be set in --allowed_preview_flags_csv. (Default: false - preview)

enable_ysql_conn_mgr_stats

Enable stats collection from Ysql Connection Manager. These stats will be displayed at the endpoint '<ip_address_of_cluster>:13000/connections' (Default: true)

entries_per_index_block

Number of entries per index block stored in WAL segment file (Default: 10000 - advanced)

estimated_replicate_msg_size_percentage

The estimated percentage of replicate message size in a log entry batch. (Default: 0.94999999999999996)

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 (Default: true - advanced)

export_help_and_type_in_prometheus_metrics

Include #TYPE and #HELP in Prometheus metrics output by default (Default: true - runtime)

export_intentdb_metrics

Dump intentsdb statistics to prometheus metrics (Default: true)

expose_metric_histogram_percentiles

Should we expose the percentiles information for metrics histograms. (Default: true)

external_intent_cleanup_secs

Duration in secs after which to cleanup external intents. (Default: 86400)

fail_on_out_of_range_clock_skew

In case transactional tables are present, crash the process if clock skew greater than the configured maximum. (Default: true)

fatal_details_path_prefix

A prefix to use for the path of a file to save fatal failure stack trace and other details to. (Default: None)

fault_crash_after_rocksdb_flush

Fraction of time to crash right after a successful RocksDB flush in tests. (Default: 0)

file_expiration_ignore_value_ttl

When deciding whether a file has expired, assume that it is safe to ignore value-level TTL and expire based on table TTL only. CAUTION - Shoule only be used for expiration of older SST files without value-level TTL metadata, or for expiring files with incorrect value-level expiration. Misuse can result in the deletion of live data! (Default: false - unsafe, runtime)

file_expiration_value_ttl_overrides_table_ttl

When deciding whether a file has expired, assume that any file with value-level TTL metadata can be expired solely on that metadata. Useful for the expiration of files earlier than the table-level TTL that is set. CAUTION - Should only be used in workloads where the user is certain all data is written with a value-level TTL. Misuse can result in the deletion of live data! (Default: false - unsafe, runtime)

flagfile

load flags from file (Default: None - stable)

flush_bootstrap_state_pool_max_threads

The maximum number of threads used to flush retryable requests (Default: -1)

flush_rocksdb_on_shutdown

Safely flush RocksDB when instance is destroyed, disabled for crash tests. (Default: true)

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. (Default: 900 - advanced)

force_global_transactions

Force all transactions to be global transactions (Default: false - runtime)

force_lookup_cache_refresh_secs

When non-zero, specifies how often we send a GetTabletLocations request to the master leader to update the tablet replicas cache. This request is only sent if we are processing a ConsistentPrefix read. (Default: 0)

force_single_shard_waiter_retry_ms

The amount of time to wait before sending the client of a single shard transaction a retryable error. Such clients are periodically sent a retryable error to ensure we don't maintain waiters in the wait queue for unresponsive or disconnected clients. This is not required for multi-tablet transactions which have a transaction ID and are rolled back if the transaction coordinator does not receive a heartbeat, since for these we will eventually discover that the transaction has been rolled back and remove the waiter. If set to zero, this will default to 30s. (Default: 30000)

forward_redis_requests

If false, the redis op will not be served if it's not a local request. The op response will be set to the redis error '-MOVED partition_key 0.0.0.0:0'. This works with jedis which only looks at the MOVED part of the reply and ignores the rest. For now, if this flag is true, we will only attempt to read from leaders, so redis_allow_reads_from_followers will be ignored. (Default: true)

fromenv

set flags from the environment [use 'export FLAGS_flag1=value'] (Default: None - advanced, stable)

fs_data_dirs

Comma-separated list of data directories. This argument must be specified. (Default: None - stable)

fs_wal_dirs

Comma-separated list of directories for write-ahead logs. This is an optional argument. If this is not specified, fs_data_dirs is used for write-ahead logs also and that's a reasonable default for most use cases. (Default: None - stable)

full_compaction_pool_max_queue_size

The maximum number of tasks that can be held in the pool for full_compaction_pool_. This pool is used to run full compactions on tablets on a scheduled basis or after they have been split and still contain irrelevant data from the tablet they were sourced from. (Default: 500)

full_compaction_pool_max_threads

The maximum number of threads allowed for full_compaction_pool_. This pool is used to run full compactions on tablets, either on a shceduled basis or after they have been split and still contain irrelevant data from the tablet they were sourced from. (Default: 1)

generic_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

generic_svc_queue_length

RPC Queue length for the generic service (Default: 50 - advanced)

get_changes_honor_deadline

Toggle whether to honor the deadline passed to log reader (Default: true)

get_locks_status_max_retry_attempts

Maximum number of retries that will be performed for GetLockStatus requests that fail in the validation phase due to unseen responses from some of the involved tablets. (Default: 2 - runtime)

get_universe_key_registry_backoff_increment_ms

Number of milliseconds added to the delay between retries of fetching the full universe key registry from master leader. This delay is applied after the RPC reties have been exhausted. (Default: 100 - advanced, stable)

get_universe_key_registry_max_backoff_sec

Maximum number of seconds to delay between retries of fetching the full universe key registry from master leader. This delay is applied after the RPC reties have been exhausted. (Default: 3 - advanced, stable)

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. (Default: 1024 - advanced)

global_log_cache_size_limit_percentage

The maximum percentage of root process memory that can be used for caching log entries across all tablets. Default is 5. (Default: 5 - advanced)

global_memstore_size_mb_max

Global memstore size is determined as a percentage of the process' hard memory limit. However, this flag limits it in absolute size. Value of 0 means no limit on the value obtained by the percentage. Default is 2048. (Default: 2048)

global_memstore_size_percentage

Percentage of process' hard memory limit to use for the global memstore. Default is 10. See also memstore_size_mb and global_memstore_size_mb_max. (Default: 10)

gzip_stream_compression_level

Compression level used by gzip stream compression. 0 - no compression, 1 - best speed, 9 - best compression. (Default: 1 - runtime)

heap_profile_path

Output path to store heap profiles. If not set, profiles are stored in the directory specified by the tmp_dir flag as $FLAGS_tmp_dir/<process-name>.<pid>.<n>.heap. (Default: None - advanced, stable)

heartbeat_interval_ms

Interval at which the TS heartbeats to the master. (Default: 1000 - advanced, runtime)

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. (Default: 3 - advanced)

heartbeat_rpc_timeout_ms

Timeout used for the TS->Master heartbeat RPCs. (Default: 15000 - advanced, runtime)

help

show help on all flags [tip: all flags can have two dashes] (Default: false - stable)

help_auto_flag_json

Dump a JSON document describing all of the AutoFlags available in this binary. (Default: false - advanced, stable)

helpmatch

show help on modules whose name contains the specified substr (Default: None - advanced, stable)

helpon

show help on the modules named by this flag value (Default: None - advanced, stable)

helppackage

show help on all modules in the main package (Default: false - advanced, stable)

helpshort

show help on only the main module for this program (Default: false - advanced, stable)

helpxml

produce an xml version of help (Default: false - advanced, stable)

history_cutoff_propagation_interval_ms

History cutoff propagation interval in milliseconds. (Default: 180000)

ht_lease_duration_ms

Hybrid time leader lease duration. A leader keeps establishing a new lease or extending the existing one with every UpdateConsensus. A new server is not allowed to add entries to RAFT log until a lease of the old leader is expired. 0 to disable. (Default: 2000)

inbound_rpc_memory_limit

Inbound RPC memory limit (Default: 0)

index_backfill_additional_delay_before_backfilling_ms

Operations that are received by the tserver, and have decided how the indexes need to be updated (based on the IndexPermission), will not be added to the list of current transactions until they are replicated/applied. This delay allows for the GetSafeTime method to wait for such operations to be replicated/applied. Ideally, this value should be set to be something larger than the raft-heartbeat-interval but can be as high as the client_rpc_timeout if we want to be more conservative. (Default: 0 - evolving, runtime)

index_backfill_upperbound_for_user_enforced_txn_duration_ms

For Non-Txn tables, it is impossible to know at the tservers whether or not an 'old transaction' is still active. To avoid having such old transactions, we assume a bound on the duration of such transactions (during the backfill process) and wait it out. This flag denotes a conservative upper bound on the duration of such user enforced transactions. (Default: 65000 - evolving, runtime)

index_backfill_wait_for_old_txns_ms

Index backfill needs to wait for transactions that started before the WRITE_AND_DELETE phase to commit or abort before choosing a time for backfilling the index. This is the max time that the GetSafeTime call will wait for, before it resorts to attempt aborting old transactions. This is necessary to guard against the pathological active transaction that never commits from blocking the index backfill forever. (Default: 0 - evolving, runtime)

index_block_restart_interval

Controls the number of data blocks to be indexed inside an index block. (Default: 1)

initial_log_segment_size_bytes

The maximum segment size we want for a new WAL segment, in bytes. This value keeps doubling (for each subsequent WAL segment) till it gets to the maximum configured segment size (log_segment_size_bytes or log_segment_size_mb). (Default: 1048576)

initial_seqno

Initial seqno for new RocksDB instances. (Default: 1125899906842624)

instance_uuid_override

When creating local instance metadata (for master or tserver) in an empty data directory, use this UUID instead of randomly-generated one. Can be used to replace a node that had its disk wiped in some scenarios. (Default: None)

intents_compaction_filter_max_errors_to_log

Maximum number of errors to log for life cycle of the intents compcation filter. (Default: 100)

intents_flush_max_delay_ms

Max time to wait for regular db to flush during flush of intents. After this time flush of regular db will be forced. (Default: 2000)

interval_durable_wal_write_ms

Interval in ms after which the Log/WAL should explicitly call fsync(). If 0 fsysnc() is not called. (Default: 1000 - stable)

io_thread_pool_size

Size of allocated IO Thread Pool. (Default: 4)

key_file_pattern

Pattern used for key file (Default: node.$0.key)

lazily_flush_superblock

Flushes the superblock lazily on metadata update. Only used for colocated table creation currently. (Default: true)

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. (Default: 20000 - 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. (Default: 6 - advanced)

leader_lease_duration_ms

Leader lease duration. A leader keeps establishing a new lease or extending the existing one with every UpdateConsensus. A new server is not allowed to serve as a leader (i.e. serve up-to-date read requests or acknowledge write requests) until a lease of this duration has definitely expired on the old leader's side. (Default: 2000)

linear_backoff_ms

Number of milliseconds added to delay while using linear backoff strategy. (Default: 1)

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. (Default: None - experimental)

log_async_preallocate_segments

Whether the WAL segments preallocation should happen asynchronously (Default: true - advanced)

log_background_sync_data_fraction

When log_enable_background_sync is enabled and periodic_sync_unsynced_bytes_ reaches bytes_durable_wal_write_mb_*log_background_sync_data_fraction, the fsync task is pushed to the log-sync queue. (Default: 0.5)

log_background_sync_interval_fraction

When log_enable_background_sync is enabled and time passed since insertion of log entry exceeds interval_durable_wal_write_ms*log_background_sync_interval_fraction the fsync task is pushed to the log-sync queue. (Default: 0.59999999999999998)

log_backtrace_at

Emit a backtrace when logging at file:linenum. (Default: None - advanced)

log_cache_gc_evict_only_over_allocated

If set to true, log cache garbage collection would evict only memory that was allocated over limit for log cache. Otherwise it will try to evict requested number of bytes. (Default: true)

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. (Default: 128 - advanced)

log_dir

If specified, logfiles are written into this directory instead of the default logging directory. (Default: None - stable)

log_enable_background_sync

If true, log fsync operations in the aggresively performed in the background. (Default: true)

log_failed_txn_metadata

Log metadata about failed transactions. (Default: false - advanced, runtime)

log_filename

Prefix of log filename - full path is <log_dir>/<log_filename>.[INFO|WARN|ERROR|FATAL] (Default: None - stable)

log_inject_append_latency_ms_max

Deprecated (Default: 0 - deprecated, runtime)

log_inject_latency

If true, injects artificial latency in log sync operations. Advanced option. Use at your own risk -- has a negative effect on performance for obvious reasons! (Default: false - unsafe)

log_inject_latency_ms_mean

The number of milliseconds of latency to inject, on average. Only takes effect if --log_inject_latency is true (Default: 100 - unsafe)

log_inject_latency_ms_stddev

The standard deviation of latency to inject in before log sync operations. Only takes effect if --log_inject_latency is true (Default: 100 - unsafe)

Put additional links to the log files in this directory (Default: None - advanced, stable)

log_max_seconds_to_retain

Log files that are older will be deleted even if they contain cdc unreplicated entries. If 0, this flag will be ignored. This flag is ignored if a log segment contains entries that haven't beenflushed to RocksDB. (Default: 86400)

log_min_seconds_to_retain

The minimum number of seconds for which to keep log segments to keep at all times, regardless of what is required for durability. Logs may be still retained for a longer amount of time if they are necessary for correct restart. This should be set long enough such that a tablet server which has temporarily failed can be restarted within the given time period. If a server is down for longer than this amount of time, it is possible that its tablets will be re-replicated on other machines. (Default: 900 - 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. (Default: 2 - advanced, runtime)

log_preallocate_segments

Whether the WAL should preallocate the entire segment before writing to it (Default: true - advanced)

log_prefix

Prepend the log prefix to the start of each log line (Default: true - runtime, advanced, stable)

log_prefix_include_pid

Include PID into the log prefix (Default: false)

log_segment_size_bytes

The default segment size for log roll-overs, in bytes. If 0 then log_segment_size_mb is used. (Default: 0)

log_segment_size_mb

The default segment size for log roll-overs, in MB (Default: 64 - advanced)

log_stop_retaining_min_disk_mb

Stop retaining logs if the space available for the logs falls below this limit. This flag is ignored if a log segment contains unflushed entries. (Default: 102400)

log_version_edits

Log RocksDB version edits as they are being written (Default: false - runtime)

logbuflevel

Buffer log messages logged at this level or lower (-1 means don't buffer; 0 means buffer INFO only; ...) (Default: 1 - runtime, advanced)

logbufsecs

Buffer log messages for at most this many seconds (Default: 30 - runtime, advanced)

logfile_mode

Log file mode/permissions. (Default: 436)

logtostderr

log messages go to stderr instead of logfiles (Default: false - runtime, stable)

lookup_cache_refresh_secs

When non-zero, specifies how often we send a GetTabletLocations request to the master leader to update the tablet replicas cache. This request is only sent if we are processing a ConsistentPrefix read and the RPC layer has determined that its view of the replicas is inconsistent with what the master has reported (Default: 60)

maintenance_manager_num_threads

Size of the maintenance manager thread pool. Beyond a value of '1', one thread is reserved for emergency flushes. For spinning disks, the number of threads should not be above the number of devices. (Default: 1 - stable)

max_big_shared_memory_segment_size

Max size of big shared memory segment in bytes. (Default: 1048576 - runtime)

max_clock_skew_usec

Transaction read clock skew in usec. This is the maximum allowed time delta between servers of a single cluster. (Default: 500000)

max_clock_sync_error_usec

Maximum allowed clock synchronization error as reported by NTP before the server will abort. (Default: 10000000 - advanced, runtime)

max_concurrent_master_lookups

Maximum number of concurrent tablet location lookups from YB client to master (Default: 500)

max_disk_throughput_mbps

The maximum disk throughput the disk attached to this node can support in MBps. (Default: 300 - runtime)

max_group_replicate_batch_size

Maximum number of operations to submit to consensus for replication in a batch. (Default: 16)

max_log_size

approx. maximum log file size (in MB). A value of 0 will be silently overridden to 1. (Default: 1800 - runtime, stable)

max_message_length

The maximum message length of the cql message. (Default: 266338304)

max_next_calls_while_skipping_future_records

After number of next calls is reached this limit, use seek to find non future record. (Default: 3 - runtime)

max_nexts_to_avoid_seek

The number of next calls to try before doing resorting to do a rocksdb seek. (Default: 2 - runtime)

max_num_tablets_for_table

Max number of tablets that can be specified in a CREATE TABLE statement (Default: 5000)

max_prevs_to_avoid_seek

The number of prev calls to try before doing a rocksdb seek. Used by fast backward scan only. (Default: 2 - runtime)

max_prometheus_metric_entries

The maximum number of Prometheus metric entries returned in each scrape. Note that if adding a metric with all its entities would exceed the limit, then we will drop them all.Thus, the actual number of metric entries returned might be smaller than the limit. (Default: 4294967295 - runtime)

max_rejection_delay_ms

Maximal delay for rejected write to be retried in milliseconds. (Default: 5000 - runtime)

max_remote_bootstrap_attempts_from_non_leader

When FLAGS_remote_bootstrap_from_leader_only is enabled, the flag represents the maximum number of times we attempt to remote bootstrap a new peer from a closest non-leader peer that result in a failure. We fallback to bootstrapping from the leader peer post this. (Default: 5 - runtime)

max_stale_read_bound_time_ms

If we are allowed to read from followers, specify the maximum time a follower can be behind by using the last message received from the leader. If set to zero, a read can be served by a follower regardless of when was the last time it received a message from the leader or how far behind this follower is. (Default: 60000 - evolving, runtime)

max_tables_metrics_breakdowns

Deprecated (Default: 0 - deprecated, runtime)

max_time_in_queue_ms

Fail calls that get stuck in the queue longer than the specified amount of time (in ms) (Default: 6000 - advanced, runtime)

max_transactions_in_status_request

Request status for at most specified number of transactions at once. 0 disables load time transaction status resolution. (Default: 128)

max_wait_for_aborting_transactions_during_restore_ms

How much time in milliseconds to wait for tablet transactions to abort while applying the raft restore operation to a tablet. (Default: 200 - advanced, runtime)

max_wait_for_processresponse_before_closing_ms

Maximum amount of time we will wait in Peer::Close() for Peer::ProcessResponse() to finish before returning proceding to close the Peer and return (Default: 5000 - advanced)

max_wait_for_safe_time_ms

Deprecated (Default: 0 - deprecated, runtime)

mem_tracker_include_pageheap_free_in_root_consumption

Whether to include tcmalloc.pageheap_free_bytes from the consumption of the root memtracker. tcmalloc.pageheap_free_bytes tracks memory mapped by tcmalloc but not currently used. If we do include this in consumption, it is possible that we reject requests due to soft memory limits being hit when we actually have available memory in the pageheap. So we exclude it by default. (Default: false - advanced, runtime)

mem_tracker_log_stack_trace

Enable logging of stack traces on memory tracker consume/release operations. Only takes effect if mem_tracker_logging is also enabled. (Default: false)

mem_tracker_logging

Enable logging of memory tracker consume/release operations (Default: false)

mem_tracker_tcmalloc_gc_release_bytes

When the total amount of memory from calls to Release() since the last GC exceeds this flag, a new tcmalloc GC will be triggered. This GC will clear the tcmalloc page heap freelist. A higher value implies less aggressive GC, i.e. higher memory overhead, but more efficient in terms of runtime. (Default: -1 - runtime)

mem_tracker_update_consumption_interval_us

Interval that is used to update memory consumption from external source. For instance from tcmalloc statistics. (Default: 2000000)

memory_limit_hard_bytes

Maximum amount of memory this daemon should use in bytes. A value of 0 specifies to instead use a percentage of the total system memory; see --default_memory_limit_to_ram_ratio for the percentage used. A value of -1 disables all memory limiting. (Default: 0 - stable)

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. (Default: 85 - advanced)

memory_limit_termination_threshold_pct

If the RSS (resident set size) of the program reaches this percentage of the root memory tracker limit, the program will exit. RSS is measured using operating system means, not the memory allocator. Set to 0 to disable this behavior. (Default: 200)

memory_limit_warn_threshold_percentage

Percentage of the hard memory limit that this daemon may consume before WARNING level messages are periodically logged. (Default: 98 - advanced, runtime)

memstore_arena_size_kb

Size of each arena allocation for the memstore (Default: 64)

memstore_size_mb

Max size (in mb) of the memstore, before needing to flush. (Default: 128)

meta_cache_lookup_throttling_max_delay_ms

Max delay between calls during lookup throttling. (Default: 1000)

meta_cache_lookup_throttling_step_ms

Step to increment delay between calls during lookup throttling. (Default: 5)

metric_node_name

Value to use as node name for metrics reporting (Default: alma8-gcp-jenkins-builder-zl97uj:9000)

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. (Default: 0 - advanced)

metrics_retirement_age_ms

The minimum number of milliseconds a metric will be kept for after it is no longer active. (Advanced option) (Default: 120000 - advanced, runtime)

metrics_snapshotter_interval_ms

Interval at which the metrics are snapshotted. (Default: 30000 - advanced, runtime)

metrics_snapshotter_table_metrics_whitelist

Table metrics to record in native metrics storage. (Default: rocksdb_sst_read_micros_sum,rocksdb_sst_read_micros_count - advanced)

metrics_snapshotter_tserver_metrics_whitelist

Tserver metrics to record in native metrics storage. (Default: handler_latency_yb_client_read_local_sum,handler_latency_yb_client_read_local_count - advanced)

metrics_snapshotter_ttl_ms

Ttl for snapshotted metrics. (Default: 604800000 - advanced)

min_leader_stepdown_retry_interval_ms

Minimum amount of time between successive attempts to perform the leader stepdown for the same combination of tablet and intended (target) leader. This is needed to avoid infinite leader stepdown loops when the current leader never has a chance to update the intended leader with its latest records. (Default: 20000)

min_rejection_delay_ms

Minimal delay for rejected write to be retried in milliseconds. (Default: 100 - runtime)

min_segment_size_bytes_to_rollover_at_flush

Only rotate wals at least of this size (in bytes) at tablet flush.-1 to disable WAL rollover at flush. 0 to always rollover WAL at flush. (Default: 0 - runtime)

min_sidecar_buffer_size

Minimal buffer to allocate for sidecar (Default: 16384)

min_thread_stack_size_bytes

Default minimum stack size for new threads. If set to <=0, the system default will be used. Note that the stack can grow larger than this if needed and allowed by system limits. (Default: 524288)

minicluster_daemon_id

A human-readable 'daemon id', e.g. 'm-1' or 'ts-2', used in tests. (Default: None)

minloglevel

Messages logged at a lower level than this don't actually get logged anywhere (Default: 0 - runtime, advanced, stable)

multi_raft_batch_size

Maximum batch size for a multi-Raft consensus payload. Ignored if set to zero. (Default: 0 - advanced)

multi_raft_heartbeat_interval_ms

The heartbeat interval for batch Raft replication. (Default: 50 - advanced)

net_address_filter

Order in which to select ip addresses returned by the resolverCan be set to something like "ipv4_all,ipv6_all" to prefer IPv4 over IPv6 addresses.Can be set to something like "ipv4_external,ipv4_all,ipv6_all" to prefer external IPv4 addresses first. Other options include ipv6_external,ipv6_non_link_local (Default: ipv4_external,ipv4_all,ipv6_external,ipv6_non_link_local,ipv6_all)

never_fsync

Never fsync() anything to disk. This is used by tests to speed up runtime and improve stability. This is very unsafe to use in production. (Default: false - unsafe, advanced)

node_to_node_encryption_required_uid

Allow only certificates with specified uid. Empty to allow any. (Default: None)

node_to_node_encryption_use_client_certificates

Should client certificates be sent and verified for encrypted node to node communication. (Default: false)

non_graph_characters_percentage_to_use_hexadecimal_rendering

Non graph charaters percentage to use hexadecimal rendering (Default: 10)

num_concurrent_backfills_allowed

Maximum number of concurrent backfill jobs that is allowed to run. (Default: -1 - runtime)

num_connections_to_server

Number of underlying connections to each server (Default: 8)

num_cpus

Number of CPU cores used in calculations (Default: 0)

num_open_tablets_metadata_simultaneously

Number of threads available to open tablets' metadata during startup. If this is set to 0 (the default), then the number of open metadata threads will be set based on the number of CPUs (Default: 0 - advanced)

num_raft_ops_to_force_idle_intents_db_to_flush

When writes to intents RocksDB are stopped and the number of Raft operations after the last write to the intents RocksDB is greater than this value, the intents RocksDB would be requested to flush. (Default: 1000)

num_reactor_threads

Number of libev reactor threads to start. If -1, the value is automatically set. (Default: -1 - advanced)

num_reserved_small_compaction_threads

Number of reserved small compaction threads. It allows splitting small vs. large compactions. (Default: -1)

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. (Default: 0 - advanced)

o_direct_block_alignment_bytes

Alignment (in bytes) for blocks used for O_DIRECT operations. (Default: 4096 - advanced)

o_direct_block_size_bytes

Size of the block to use when flag durable_wal_write is set. (Default: 4096 - advanced)

openssl_require_fips

Use OpenSSL FIPS Provider. (Default: false)

outbound_rpc_memory_limit

Outbound RPC memory limit (Default: 0)

parallelize_bootstrap_producer

Deprecated (Default: false - deprecated, runtime)

parallelize_read_ops

Controls whether multiple (Redis) read ops that are present in a operation should be executed in parallel. (Default: true - advanced, runtime)

password_hash_cache_size

Number of password hashes to cache. 0 or negative disables caching. (Default: 64)

pg_cache_response_renew_soft_lifetime_limit_ms

Lifetime limit for response cache soft renewing process (Default: 180000)

pg_client_extra_timeout_ms

Adding this value to RPC call timeout, so postgres could detect timeout by it's own mechanism and report it. (Default: 2000)

pg_client_heartbeat_interval_ms

Pg client heartbeat interval in ms. (Default: 10000)

pg_client_session_expiration_ms

Pg client session expiration time in milliseconds. (Default: 60000)

pg_client_svc_queue_length

RPC queue length for the Pg Client service. (Default: 5000 - advanced)

pg_client_use_shared_memory

Use shared memory for executing read and write pg client queries (Default: true - runtime)

pg_cron_leader_lease_sec

The time in seconds to hold the pg_cron leader lease. (Default: 60 - runtime)

pg_cron_leadership_refresh_sec

Frequency at which the leadership is revalidated. This should be less than pg_cron_leader_lease_sec (Default: 10 - runtime)

pg_mem_tracker_tcmalloc_gc_release_bytes

Overriding the gflag mem_tracker_tcmalloc_gc_release_bytes defined in mem_tracker.cc. The overriding value is specifically set for Postgres backends (Default: 5242880)

pg_mem_tracker_update_consumption_interval_us

Interval that is used to update memory consumption from external source. For instance from tcmalloc statistics. This interval is for Postgres backends only (Default: 50000)

pg_proxy_bind_address

Deprecated (Default: None - deprecated)

pg_response_cache_capacity

PgClientService response cache capacity. (Default: 1024)

pg_response_cache_num_key_group_bucket

Number of buckets for key group values which are used as part of response cache key. Response cache can be disabled for particular key group, but actually it will be disabled for all key groups in same bucket (Default: 512)

pg_response_cache_size_bytes

Size in bytes of the PgClientService response cache. 0 value (default) means that cache size is not limited by this flag. (Default: 0)

pg_response_cache_size_percentage

Percentage of process' hard memory limit to use by the PgClientService response cache. Default value is 5, max is 100, min is 0 means that cache size is not limited by this flag. (Default: 5)

pg_verbose_error_log

True to enable verbose logging of errors in PostgreSQL server (Default: false)

pg_yb_session_timeout_ms

Deprecated (Default: 0 - deprecated, runtime)

pggate_master_addresses

Addresses of the master servers to which the PostgreSQL proxy server connects. (Default: None)

pggate_num_connections_to_server

Number of underlying connections to each server from a PostgreSQL backend process. This overrides the value of --num_connections_to_server. (Default: 1)

pggate_rpc_timeout_secs

Timeout for RPCs from pggate to YB cluster (Default: 60)

pggate_tserver_shm_fd

File descriptor of the local tablet server's shared memory. (Default: -1)

pggate_ybclient_reactor_threads

The number of reactor threads to be used for processing ybclient requests originating in the PostgreSQL proxy server (Default: 2)

pgsql_consistent_transactional_paging

Whether to enforce consistency of data returned for second page and beyond for YSQL queries on transactional tables. If true, read restart errors could be returned to prevent inconsistency. If false, no read restart errors are returned but the data may be stale. The latter is preferable for long scans. The data returned for the first page of results is never stale regardless of this flag. (Default: true)

pgsql_proxy_bind_address

Address to bind the PostgreSQL proxy to (Default: None)

pgsql_proxy_webserver_port

Webserver port for PGSQL (Default: 13000)

pgsql_rpc_keepalive_time_ms

Deprecated (Default: 0 - deprecated, runtime)

placement_cloud

The cloud in which this instance is started. (Default: cloud1)

placement_region

The cloud region in which this instance is started. (Default: datacenter1)

placement_uuid

The uuid of the tservers cluster/placement. (Default: None)

placement_zone

The cloud availability zone in which this instance is started. (Default: rack1)

post_split_compaction_input_size_threshold_bytes

Max size of a files to be compacted within one iteration. Set to 0 to compact all files at once during post split compaction. (Default: 268435456 - runtime)

post_split_trigger_compaction_pool_max_queue_size

Deprecated (Default: 0 - deprecated, runtime)

post_split_trigger_compaction_pool_max_threads

Deprecated (Default: 0 - deprecated, runtime)

postmaster_cgroup

cgroup to add postmaster process to (Default: None)

controls the depth of the child traces to be printed. (Default: 5 - advanced, runtime)

Controls the rate at which traces are printed. Setting this to 0 disables printing the collected traces. (Default: 0 - advanced, runtime)

prioritize_tasks_by_disk

Consider disk load when considering compaction and flush priorities. (Default: false)

priority_thread_pool_size

Max running workers in compaction thread pool. If -1 and max_background_compactions is specified - use max_background_compactions. If -1 and max_background_compactions is not specified - use sqrt(num_cpus). (Default: -1)

profiler_sample_freq_bytes

The frequency at which TCMalloc should sample allocations. Sampling is disabled if this is set to <= 0. (Default: 1048576)

propagate_safe_time

Propagate safe time to read from leader to followers (Default: true)

protege_synchronization_timeout_ms

Timeout to synchronize protege before performing step down. 0 to disable synchronization. (Default: 1000)

proxy_resolve_cache_ms

Time in milliseconds to cache resolution result in Proxy (Default: 5000)

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. (Default: 500 - advanced)

rate_limiter_min_rate

Minimum transmission rate in bytes/sec (Default: 1000)

rate_limiter_min_size

Minimum size for each transmission request (Default: 32768)

rbs_init_max_number_of_retries

Max number of retries during remote bootstrap session initialisation, when metadata before and after checkpoint does not match. 0 - to disable retry logic. (Default: 5 - runtime)

reactor_based_outbound_call_expiration_delay_ms

Expire OutboundCalls using Reactor-level logic with this delay after the timeout, as an additional layer of protection against stuck outbound calls. This safety mechanism is disabled if this flag is set to 0. (Default: 1000 - advanced, runtime)

reactor_check_current_thread

Enforce the requirement that operations that require running on a reactor thread are always running on the correct reactor thread. (Default: true - runtime)

read_buffer_memory_limit

Overall limit for read buffers. Positive value - limit in bytes. Negative value - percent of root process memory. Zero - unlimited. (Default: -5)

read_pool_max_queue_size

The maximum number of tasks that can be held in the queue for read_pool_. This pool is used to run multiple read operations, that are part of the same tablet rpc, in parallel. (Default: 128)

read_pool_max_threads

The maximum number of threads allowed for read_pool_. This pool is used to run multiple read operations, that are part of the same tablet rpc, in parallel. (Default: 128)

redis_allow_reads_from_followers

If true, the read will be served from the closest replica in the same AZ, which can be a follower. (Default: false - evolving, runtime)

redis_callbacks_threadpool_size

Deprecated (Default: 0 - deprecated, runtime)

redis_connection_soft_limit_grace_period_sec

The duration for which the outbound data needs to exceeed the softlimit before the connection gets closed down. (Default: 60)

redis_keys_threshold

Maximum number of keys allowed to be in the db before the KEYS operation errors out (Default: 10000)

redis_max_batch

Max number of redis commands that forms batch (Default: 500)

redis_max_command_size

Maximum size of the command in redis (Default: 265289728)

redis_max_concurrent_commands

Max number of redis commands received from single connection, that could be processed concurrently (Default: 1)

redis_max_queued_bytes

Max number of bytes in queued redis commands. (Default: 134217728)

redis_max_read_buffer_size

Max read buffer size for Redis connections. (Default: 134217728)

redis_max_value_size

Maximum size of the value in redis (Default: 67108864)

redis_password_caching_duration_ms

The duration for which we will cache the redis passwords. 0 to disable. (Default: 5000)

redis_passwords_separator

The character used to separate multiple passwords. (Default: ,)

redis_proxy_bind_address

Address to bind the redis proxy to (Default: None)

redis_proxy_webserver_port

Webserver port for redis proxy (Default: 11000)

redis_rpc_block_size

Redis RPC block size (Default: 1048576)

redis_rpc_keepalive_time_ms

If an RPC connection from a client is idle for this amount of time, the server will disconnect the client. Setting flag to 0 disables this clean up. (Default: 0 - advanced)

redis_rpc_memory_limit

Redis RPC memory limit (Default: 0)

redis_safe_batch

Use safe batching with Redis service (Default: true)

redis_service_yb_client_timeout_millis

Timeout in milliseconds for RPC calls from Redis service to master/tserver (Default: 3000)

redis_svc_queue_length

RPC queue length for redis service (Default: 5000 - advanced)

ref_counted_debug_type_name_regex

Regex for type names for debugging RefCounted / scoped_refptr based classes. An empty string disables RefCounted debug logging. (Default: None)

regular_tablets_data_block_key_value_encoding

Key-value encoding to use for regular data blocks in RocksDB. Possible options: shared_prefix, three_shared_parts (Default: three_shared_parts - stable, auto)

reject_writes_min_disk_space_check_interval_sec

Interval in seconds to check for disk space availability. The check will switch to aggressive mode (every 10s) if the available disk space is less than --max_disk_throughput_mbps * --reject_writes_min_disk_space_check_interval_sec. NOTE: Use a value higher than 10. If a value less than 10 is used, then we always run in aggressive check mode, potentially causing performance degradations. (Default: 60 - runtime)

reject_writes_min_disk_space_mb

Reject writes if less than this much disk space is available on the WAL directory and --reject_writes_when_disk_full is enabled. If set to 0, defaults to --max_disk_throughput_mbps * min(10, --reject_writes_min_disk_space_check_interval_sec). (Default: 0 - runtime)

reject_writes_when_disk_full

Reject incoming writes to the tablet if we are running out of disk space. (Default: true - runtime)

remote_boostrap_rate_limit_bytes_per_sec

Deprecated (Default: 0 - deprecated, runtime)

remote_bootstrap_change_role_timeout_ms

Timeout for change role operation during remote bootstrap. (Default: 15000)

remote_bootstrap_from_leader_only

Whether to instruct the peer to attempt bootstrap from the closest peer instead of the leader. The leader too could be the closest peer depending on the new peer's geographic placement. Setting the flag to false will enable remote bootstrap from the closest peer. On addition of a new node, it follows that most bootstrap sources would now be from a single node and could result in increased load on the node. If bootstrap of a new node is slow, it might be worth setting the flag to true and enable bootstrapping from leader only. (Default: false - stable, auto, runtime)

remote_bootstrap_max_chunk_size

Maximum chunk size to be transferred at a time during remote bootstrap. (Default: 67108864)

remote_bootstrap_rate_limit_bytes_per_sec

Maximum transmission rate during a remote bootstrap. This is across all the remote bootstrap sessions for which this process is acting as a sender or receiver. So the total limit will be 2 * remote_bootstrap_rate_limit_bytes_per_sec because a tserver or master can act both as a sender and receiver at the same time. (Default: 268435456)

replication_failure_delay_exponent

Max number of failures (N) to use when calculating exponential backoff (2^N-1). (Default: 16 - runtime)

report_ysql_ddl_txn_status_to_master

If set, at the end of DDL operation, the TServer will notify the YB-Master whether the DDL operation was committed or aborted (Default: true - runtime)

require_durable_wal_write

Whether durable WAL write is required.In case you cannot write using O_DIRECT in WAL and data directories and this flag is set truethe system will deliberately crash with the appropriate error. If this flag is set false, the system will soft downgrade the durable_wal_write flag. (Default: false - stable)

reset_master_leader_timeout_ms

Timeout to reset master leader in milliseconds. (Default: 15000)

retry_failed_replica_ms

Time in milliseconds to wait for before retrying a failed replica (Default: 3600000)

retryable_request_range_time_limit_secs

Max delta in time for single op id range. (Default: 30)

retryable_request_timeout_secs

Maximum amount of time to keep write request in index, to prevent duplicate writes.If the client timeout is less than this value, then use the client timeout instead. (Default: 660 - runtime)

reuse_unclosed_segment_threshold_bytes

If the last left in-progress segment size is smaller or equal to this threshold, Log will reuse this last segment as writable active_segment at tablet bootstrap. Otherwise, Log will create a new segment. (Default: 9223372036854775807 - runtime)

rlimit_as

Memory size limit: bytes. (Default: -1)

rlimit_cpu

CPU time limit: seconds. (Default: -1)

rlimit_data

Data file size limit: bytes. (Default: -1)

rlimit_fsize

File size limit: blocks. (Default: -1)

rlimit_memlock

Locked memory limit: bytes. (Default: 65536)

rlimit_nofile

Open files limit. (Default: 1048576)

rlimit_nproc

User process limit. (Default: 12000)

rlimit_stack

Stack size limit: bytes. (Default: 8388608)

rocksdb_advise_random_on_open

If set to true, will hint the underlying file system that the file access pattern is random, when a sst file is opened. (Default: true - runtime)

rocksdb_base_background_compactions

Number threads to do background compactions. (Default: -1)

rocksdb_check_sst_file_tail_for_zeros

Size of just written SST data file tail to be checked for being zeros. Check is not performed if flag value is zero. (Default: 0 - advanced, runtime)

rocksdb_compact_flush_rate_limit_bytes_per_sec

Use to control write rate of flush and compaction. (Default: 1073741824)

rocksdb_compact_flush_rate_limit_sharing_mode

map[#text:Allows to control rate limit sharing/calculation across RocksDB instances br:[ ]] (Default: tserver)

rocksdb_compaction_measure_io_stats

Measure stats for rocksdb compactions. (Default: false)

rocksdb_compaction_size_threshold_bytes

Threshold beyond which compaction is considered large. (Default: 2147483648)

rocksdb_disable_compactions

Disable rocksdb compactions. (Default: false)

rocksdb_file_starting_buffer_size

Starting buffer size for writable files, grows by 2x every new allocation. (Default: 8192)

rocksdb_iterator_init_readahead_size

Initial RocksDB iterator readahead size. (Default: 32768 - advanced, runtime)

rocksdb_iterator_max_readahead_size

Maximum RocksDB iterator readahead size. (Default: 2097152 - advanced, runtime)

rocksdb_iterator_sequential_disk_reads_for_auto_readahead

Enable readahead when RocksDB iterator attempts to perform a configured number of sequential disk reads. If set to 0, the iterator readahead is disabled. If set to 1, iterator readahead will be enabled with the first disk read. If set to N > 1, iterator readahead will be used with the Nth sequential disk read. (Default: 4 - advanced, runtime)

rocksdb_level0_file_num_compaction_trigger

Number of files to trigger level-0 compaction. -1 if compaction should not be triggered by number of files at all. (Default: 5)

rocksdb_level0_slowdown_writes_trigger

The number of files above which writes are slowed down. (Default: -1)

rocksdb_level0_stop_writes_trigger

The number of files above which compactions are stopped. (Default: -1)

rocksdb_max_background_compactions

Increased number of threads to do background compactions (used when compactions need to catch up.) Unless rocksdb_disable_compactions=true, this cannot be set to zero. (Default: -1)

rocksdb_max_background_flushes

Number threads to do background flushes. (Default: -1)

rocksdb_max_file_size_for_compaction

Maximal allowed file size to participate in RocksDB compaction. 0 - unlimited. (Default: 0)

rocksdb_max_sst_write_retries

Maximum allowed number of retries to write SST file in case of detected corruption after write. (Default: 0 - advanced, runtime)

rocksdb_max_write_buffer_number

Maximum number of write buffers that are built up in memory. (Default: 100500)

rocksdb_nothing_in_memtable_to_flush_sleep_ms

Used for a temporary workaround for http://bit.ly/ybissue437. How long to wait (ms) in case we could not flush any memtables, usually due to filters preventing us from doing so. (Default: 10)

rocksdb_release_mutex_during_wait_for_memtables_to_flush

When a flush is scheduled, but there isn't a memtable eligible yet, release the mutex before going to sleep and reacquire it post sleep. (Default: true)

rocksdb_universal_compaction_always_include_size_threshold

Always include files of smaller or equal size in a compaction. (Default: 67108864)

rocksdb_universal_compaction_min_merge_width

The minimum number of files in a single compaction run. (Default: 4)

rocksdb_universal_compaction_size_ratio

The percentage upto which files that are larger are include in a compaction. (Default: 20)

rocksdb_use_logging_iterator

Wrap newly created RocksDB iterators in a logging wrapper (Default: false)

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. (Default: 128 - advanced)

rpc_bind_addresses

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

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) (Default: 100000000 - advanced, runtime)

rpc_connection_timeout_ms

Timeout for RPC connection operations (Default: 15000)

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. Setting flag to 0 disables this clean up. (Default: 65000 - advanced)

rpc_dump_all_traces

If true, dump all RPC traces at INFO level (Default: false - advanced, runtime)

rpc_max_message_size

The maximum size of a message of any RPC that the server will accept. The sum of consensus_max_batch_size_bytes and 1KB should be less than rpc_max_message_size (Default: 267386880)

rpc_queue_limit

Deprecated (Default: 0 - deprecated, runtime)

rpc_read_buffer_size

RPC connection read buffer size. 0 to auto detect. (Default: 0)

rpc_server_allow_ephemeral_ports

Allow binding to ephemeral ports. This can cause problems, so currently only allowed in tests. (Default: false - unsafe)

rpc_slow_query_threshold_ms

Traces for calls that take longer than this threshold (in ms) are logged (Default: 10000 - advanced, runtime)

rpc_throttle_threshold_bytes

Throttle inbound RPC calls larger than specified size on hitting mem tracker soft limit. Throttling is disabled if negative value is specified. The value must be at least 16 and less than the strictly enforced consensus_max_batch_size_bytes. (Default: 1048576)

rpc_workers_limit

Workers limit for rpc server (Default: 1024)

rpcs_shutdown_extra_delay_ms

Extra allowed time for a single RPC command to complete after its deadline. (Default: 5000)

rpcs_shutdown_timeout_ms

Timeout for a batch of multiple RPCs invoked in parallel to shutdown. (Default: 15000)

rpcz_max_cql_batch_dump_count

The maximum number of CQL batch elements in the RPCZ dump. (Default: 4096)

rpcz_max_cql_query_dump_size

The maximum size of the CQL query string in the RPCZ dump. (Default: 4096)

rpcz_max_redis_query_dump_size

The maximum size of the Redis query string in the RPCZ dump. (Default: 4096)

sampled_trace_1_in_n

Flag to enable/disable sampled tracing. 0 disables. (Default: 1000 - advanced, runtime)

scanner_batch_size_rows

Deprecated (Default: 0 - deprecated, runtime)

scanner_default_batch_size_bytes

Deprecated (Default: 0 - deprecated, runtime)

scanner_max_batch_size_bytes

Deprecated (Default: 0 - deprecated, runtime)

scheduled_full_compaction_check_interval_min

Deprecated (Default: 0 - deprecated, runtime)

scheduled_full_compaction_frequency_hours

Frequency with which full compactions should be scheduled on tablets. 0 indicates the feature is disabled. (Default: 0 - runtime)

scheduled_full_compaction_jitter_factor_percentage

Percentage of scheduled_full_compaction_frequency_hours to be used as jitter when determining full compaction schedule per tablet. Jitter will be deterministically computed when scheduling a compaction, between 0 and (frequency * jitter factor) hours. (Default: 33 - runtime)

send_wait_for_report_interval_ms

The tick interval time to trigger updating all transaction coordinators with wait-for relationships. (Default: 60000)

server_broadcast_addresses

Broadcast addresses for this server. (Default: None)

server_tcmalloc_max_total_thread_cache_bytes

Total number of bytes to use for the thread cache for tcmalloc across all threads in the tserver/master. If this is negative, it has no effect. (Default: -1)

skip_flushed_entries

Only replay WAL entries that are not flushed to RocksDB or necessary to bootstrap retryable requests (unflushed and within retryable request timeout). (Default: true)

skip_flushed_entries_in_first_replayed_segment

If applicable, only replay entries that are not flushed to RocksDB or necessary to bootstrap retryable requests in the first replayed wal segment. (Default: true - runtime)

skip_tablet_data_verification

Skip checking tablet data for corruption. (Default: false)

skip_wal_rewrite

Skip rewriting WAL files during bootstrap. (Default: true - experimental, runtime)

slow_rwc_lock_log_ms

How long to wait for a write or commit lock before logging that it took a long time (and logging the stacks of the writer / reader threads if FLAGS_enable_rwc_lock_debugging is true). (Default: 5000 - advanced, runtime)

small_compaction_extra_priority

Small compaction will get small_compaction_extra_priority extra priority. (Default: 1)

socket_receive_buffer_size

Socket receive buffer size, 0 to use default (Default: 0)

ssl_protocols

List of allowed SSL protocols (ssl2, ssl3, tls10, tls11, tls12). Empty to allow TLS only. (Default: None)

sst_files_hard_limit

When majority SST files number is greater that this limit, we will reject all write requests. (Default: 48 - runtime)

sst_files_soft_limit

When majority SST files number is greater that this limit, we will start rejecting part of write requests. The higher the number of SST files, the higher probability of rejection. (Default: 24 - runtime)

start_cql_proxy

Starts a CQL proxy along with the tablet server (Default: true)

start_pgsql_proxy

Whether to run a PostgreSQL server as a child process of the tablet server (Default: false)

start_redis_proxy

Starts a redis proxy along with the tablet server (Default: true)

stateful_service_operation_timeout_sec

The number of seconds after which stateful service operations should timeout. (Default: 120 - runtime)

stateful_service_periodic_task_interval_ms

Frequency of the stateful service periodic task. 0 indicates that the task should not run. (Default: 10000 - runtime)

stderrthreshold

log messages at or above this level are copied to stderr in addition to logfiles. This flag obsoletes --alsologtostderr. (Default: 3 - runtime, advanced, stable)

stepdown_disable_graceful_transition

During a leader stepdown, disable graceful leadership transfer to an up to date peer (Default: false)

stop_logging_if_full_disk

Stop attempting to log to disk if the disk is full. (Default: false - runtime, advanced, stable)

stop_on_parent_termination

When specified, this process will terminate when parent process terminates.Linux-only. (Default: false)

store_min_start_ht_running_txns

If enabled, minimum start hybrid time among running txns will be persisted in the segment footer during closing of the segment. (Default: false - runtime)

stream_compression_algo

Algorithm used for stream compression. 0 - no compression, 1 - gzip, 2 - snappy, 3 - lz4. (Default: 0)

stream_truncate_record

Enable streaming of TRUNCATE record (Default: false - runtime)

stuck_outbound_call_check_interval_sec

Check and report each stuck outbound call at most once per this number of seconds. (Default: 30 - advanced, runtime)

stuck_outbound_call_default_timeout_sec

Default timeout for reporting purposes for the Reactor-based stuck OutboundCall tracking and expiration mechanism. That mechanism itself is controlled by the reactor_based_outbound_call_expiration_delay_ms flag. Note that this flag does not force a call to be timed out, it just specifies the interval after which the call is logged. (Default: 120 - advanced, runtime)

suicide_on_eio

Kill the process if an I/O operation results in EIO (Default: true - advanced)

svc_queue_length_default

Deprecated (Default: 0 - deprecated, runtime)

symbolize_stacktrace

Symbolize the stack trace in the tombstone (Default: true - advanced, runtime, stable)

tablet_bloom_block_size

Deprecated (Default: 0 - deprecated, runtime)

tablet_bloom_target_fp_rate

Deprecated (Default: 0 - deprecated, runtime)

tablet_do_compaction_cleanup_for_intents

Whether to clean up intents for aborted transactions in compaction. (Default: true)

tablet_do_dup_key_checks

Deprecated (Default: false - deprecated, runtime)

tablet_enable_ttl_file_filter

Enables compaction to directly delete files that have expired based on TTL, rather than removing them via the normal compaction process. (Default: false)

tablet_exclusive_full_compaction

Enables exclusive mode for any non-post-split full compaction for a tablet: all scheduled and unscheduled compactions are run before the full compaction and no other compactions will get scheduled during a full compaction. (Default: false - runtime)

tablet_exclusive_post_split_compaction

Enables exclusive mode for post-split compaction for a tablet: all scheduled and unscheduled compactions are run before post-split compaction and no other compaction will get scheduled during post-split compaction. (Default: false - runtime)

tablet_operation_memory_limit_mb

Maximum amount of memory that may be consumed by all in-flight operations belonging to a particular tablet. When this limit is reached, new operations will be rejected and clients will be forced to retry them. If -1, operation memory tracking is disabled. (Default: 1024 - advanced)

tablet_overhead_size_percentage

Percentage of process' hard memory limit to use for tablet-related overheads. A value of 0 means no limit. Must be between 0 and 100 inclusive. Exception: -1000 specifies to instead use a recommended value determined in part by the amount of RAM available. (Default: -1000)

tablet_replicas_per_core_limit

The maximum number of tablets the universe can support per vCPU being used by TServers. 0 means no limit. (Default: 0 - advanced, runtime)

tablet_replicas_per_gib_limit

The maximum number of tablets the universe can support per GiB of RAM reserved by TServers for tablet overheads. 0 means no limit. (Default: 1462 - advanced, runtime)

tablet_rocksdb_ops_quiet_down_timeout_ms

Deprecated (Default: 0 - deprecated, runtime)

tablet_server_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

tablet_server_svc_queue_length

RPC queue length for the TS service. (Default: 5000 - advanced)

tablet_validator_retain_delete_markers_validation_period_sec

The time period in seconds for validation of retain delete markers property for index tables. The value is not updated immediately, it is posponed till the nearest run of the periodic validation task. The value of 0 is used to disable verification. In this case, the validation task wakes up every minute to get a new flag value. (Default: 60 - advanced, runtime)

taskstream_queue_max_size

Maximum number of operations waiting in the taskstream queue. (Default: 100000)

taskstream_queue_max_wait_ms

Maximum time in ms to wait for items in the taskstream queue to arrive. (Default: 1000)

tcmalloc_max_free_bytes_percentage

Maximum percentage of the RSS that tcmalloc is allowed to use for reserved but unallocated memory. (Default: 10 - advanced, runtime)

tcmalloc_max_per_cpu_cache_bytes

Sets the maximum cache size per CPU cache if Google TCMalloc is being used. If this is zero or less, it has no effect. (Default: -1)

tcmalloc_trace_enabled

Enable tracing of malloc/free calls for tcmalloc. (Default: false - advanced)

tcmalloc_trace_frequency

Frequency at which malloc/free calls should be traced. (Default: 0 - advanced, runtime)

tcmalloc_trace_max_threshold

Maximum (exclusive) threshold for tracing malloc/free calls. If 0, no maximum threshold is used. (Default: 0 - advanced)

tcmalloc_trace_min_threshold

Minimum (inclusive) threshold for tracing malloc/free calls. (Default: 0 - advanced)

temporary_disable_preelections_timeout_ms

If some of nodes does not support preelections, then we disable them for this amount of time. (Default: 600000)

TEST_check_broadcast_address

Break connectivity in test mini cluster to check broadcast address. (Default: true)

TEST_export_ash_uuids_as_hex_strings

Deprecated (Default: false - deprecated, runtime)

TEST_pggate_ignore_tserver_shm

Deprecated (Default: false - deprecated, runtime)

TEST_transaction_allow_rerequest_status

Allow rerequest transaction status when TryAgain is received. (Default: true)

throttle_cql_calls_on_soft_memory_limit

Whether to reject CQL calls when soft memory limit is reached. (Default: true)

throttle_cql_calls_policy

Policy for throttling CQL calls. 1 - drop throttled calls. 0 - respond with OVERLOADED error. (Default: 0)

time_based_wal_gc_clock_delta_usec

A delta in microseconds to add to the clock value used to determine if a WAL segment is safe to be garbage collected. This is needed for clusters running with a skewed hybrid clock, because the clock used for time-based WAL GC is the wall clock, not hybrid clock. (Default: 0)

time_source

The clock source that HybridClock should use. Leave empty for WallClock, clockbound for ClockboundClock, and other values depend on added clock providers and specific for appropriate tests, that adds them. (Default: None)

timestamp_history_retention_interval_sec

The time interval in seconds to retain DocDB history for. Point-in-time reads at a hybrid time further than this in the past might not be allowed after a compaction. Set this to be higher than the expected maximum duration of any single transaction in your application. (Default: 900)

timestamp_syscatalog_history_retention_interval_sec

The time interval in seconds to retain syscatalog history for CDC to read specific schema version. Point-in-time reads at a hybrid time further than this in the past might not be allowed after a compaction. Set this to be higher than the expected maximum duration of any single transaction in your application. (Default: 14400)

tmp_dir

Directory to store temporary files. By default, the value of '/tmp' is used. (Default: /tmp)

total_mem_watcher_interval_millis

Interval in milliseconds between checking the total memory usage of the current process as seen by the operating system, and deciding whether to terminate in case of excessive memory consumption. (Default: 1000 - runtime)

trace_max_dump_size

The max size of a trace dumped to the logs in Trace::DumpToLogInfo. 0 means unbounded. (Default: 30000 - advanced, runtime)

trace_to_console

Trace pattern specifying which trace events should be dumped directly to the console (Default: None - experimental)

tracing_level

verbosity levels (like --v) up to which tracing is enabled. (Default: 0 - advanced, runtime)

track_stack_traces

Whether to enable stack trace tracking (Default: false - runtime)

transaction_abort_check_interval_ms

Interval to check whether running transaction was aborted. (Default: 5000 - runtime)

transaction_abort_check_timeout_ms

Timeout used when checking for aborted transactions. (Default: 30000 - runtime)

transaction_check_interval_usec

Transaction check interval in usec. (Default: 500000)

transaction_deadlock_detection_interval_usec

Deadlock detection interval in usec. (Default: 60000000 - advanced)

transaction_disable_heartbeat_in_tests

Disable heartbeat during test. (Default: false)

transaction_heartbeat_usec

Interval of transaction heartbeat in usec. (Default: 500000)

transaction_manager_queue_limit

Max number of tasks used by transaction manager (Default: 500)

transaction_manager_workers_limit

Max number of workers used by transaction manager (Default: 50)

transaction_max_missed_heartbeat_periods

Maximum heartbeat periods that a pending transaction can miss before the transaction coordinator expires the transaction. The total expiration time in microseconds is transaction_heartbeat_usec times transaction_max_missed_heartbeat_periods. The value passed to this flag may be fractional. (Default: 10)

transaction_min_running_check_delay_ms

When transaction with minimal start hybrid time is updated at transaction participant, we wait at least this number of milliseconds before checking its status at transaction coordinator. Used for the optimization that deletes provisional records RocksDB SSTable files. (Default: 50)

transaction_min_running_check_interval_ms

While transaction with minimal start hybrid time remains the same, we will try to check its status at transaction coordinator at regular intervals this long (ms). Used for the optimization that deletes provisional records RocksDB SSTable files. (Default: 250)

transaction_pool_cleanup_interval_ms

How frequently we should cleanup transaction pool (Default: 5000)

transaction_pool_reserve_factor

During cleanup we will preserve number of transactions in pool that equals to average number or take requests during prepration multiplied by this factor (Default: 2)

transaction_resend_applying_interval_usec

Transaction resend applying interval in usec. (Default: 5000000)

transaction_rpc_timeout_ms

Timeout used by transaction related RPCs in milliseconds. (Default: 5000 - runtime)

transaction_status_tablet_log_segment_size_bytes

The segment size for transaction status tablet log roll-overs, in bytes. (Default: 4194304)

transactions_cleanup_cache_size

Transactions cleanup cache size. (Default: 256)

transactions_poll_check_aborted

Check aborted transactions during poll. (Default: true)

transactions_status_poll_interval_ms

Transactions poll interval. (Default: 500)

tryfromenv

set flags from the environment if present (Default: None - advanced, stable)

ts_admin_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

ts_admin_svc_queue_length

RPC queue length for the TS admin service (Default: 50 - advanced)

ts_backup_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

ts_backup_svc_queue_length

RPC queue length for the TS backup service (Default: 50 - advanced)

ts_consensus_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

ts_consensus_svc_queue_length

RPC queue length for the TS consensus service. (Default: 5000 - advanced)

ts_remote_bootstrap_svc_num_threads

Deprecated (Default: 0 - deprecated, runtime)

ts_remote_bootstrap_svc_queue_length

RPC queue length for the TS remote bootstrap service (Default: 50 - advanced)

tserver_enable_metrics_snapshotter

Should metrics snapshotter be enabled (Default: false)

tserver_heartbeat_metrics_add_drive_data

Add drive data to metrics which tserver sends to master (Default: true - runtime)

tserver_heartbeat_metrics_add_leader_info

Add leader info to metrics tserver sends to master (Default: true - runtime)

tserver_heartbeat_metrics_add_replication_status

Add replication status to metrics tserver sends to master (Default: true - runtime)

tserver_heartbeat_metrics_interval_ms

Interval (in milliseconds) at which tserver sends its metrics in a heartbeat to master. (Default: 5000 - runtime)

tserver_master_addrs

Comma separated addresses of the masters which the tablet server should connect to. The CQL proxy reads this flag as well to determine the new set of masters (Default: 127.0.0.1:7100 - stable)

tserver_master_replication_factor

Number of master replicas. By default it is detected based on tserver_master_addrs option, but could be specified explicitly together with passing one or more master service domain name and port through tserver_master_addrs for masters auto-discovery when running on Kubernetes. (Default: 0)

tserver_metrics_snapshotter_yb_client_default_timeout_ms

Default timeout for the YBClient embedded into the tablet server that is used by metrics snapshotter. (Default: 5000 - advanced)

tserver_tcmalloc_max_total_thread_cache_bytes

Deprecated (Default: 0 - deprecated, runtime)

tserver_yb_client_default_timeout_ms

Default timeout for the YBClient embedded into the tablet server that is used for distributed transactions. (Default: 60000)

txn_max_apply_batch_records

Max number of apply records allowed in single RocksDB batch. When a transaction's data in one tablet does not fit into specified number of records, it will be applied using multiple RocksDB write batches. (Default: 100000)

txn_print_trace_every_n

Controls the rate at which txn traces are printed. Setting this to 0 disables printing the collected traces. (Default: 0 - advanced, runtime)

txn_print_trace_on_error

Controls whether to always print txn traces on error. (Default: false - advanced, runtime)

txn_slow_op_threshold_ms

Controls the rate at which txn traces are printed. Setting this to 0 disables printing the collected traces. (Default: 0 - advanced, runtime)

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 (Default: None - advanced, stable)

universe_key_client_max_delay_ms

Maximum Time in microseconds that an instance of Backoff_waiter waits before retrying to get the Universe key registry. (Default: 2000 - runtime)

update_all_tablets_upon_network_failure

If this is enabled, then pon receiving a network error, we mark the remote server as being unreachable for all tablets in metacache, instead of the single tablet which issued the rpc. (Default: true - runtime)

update_metrics_interval_ms

How often to update xDC cluster metrics. (Default: 15000 - runtime)

update_min_cdc_indices_interval_secs

How often to read cdc_state table to get the minimum applied index for each tablet across all streams. This information is used to correctly keep log files that contain unapplied entries. This is also the rate at which a tablet's minimum replicated index across all streams is sent to the other peers in the configuration. If flag enable_log_retention_by_op_idx is disabled, this flag has no effect. (Default: 60 - runtime)

update_permissions_cache_msecs

How often the roles' permissions cache should be updated. 0 means never update it (Default: 2000)

use_bootstrap_intent_ht_filter

Use min replay txn start time filter for bootstrap. (Default: false - runtime)

use_cassandra_authentication

If to require authentication on startup. (Default: false)

use_cgroups_memory

use cgroup memory max value instead of total memory of the node. (Default: false - advanced)

use_client_to_server_encryption

Use client to server encryption (Default: false)

use_docdb_aware_bloom_filter

Whether to use the DocDbAwareFilterPolicy for both bloom storage and seeks. (Default: true)

use_fast_backward_scan

Use backward scan optimization to build a row in the reverse order for YSQL. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'use_fast_backward_scan' must be set in --allowed_preview_flags_csv. (Default: false - preview)

use_fast_next_for_iteration

Whether intent aware iterator should use fast next feature. (Default: true - runtime)

use_hashed_redis_password

Store the hash of the redis passwords instead. (Default: true)

use_icu_timezones

Use the new ICU library for timezones instead of boost (Default: true)

use_libbacktrace

Whether to use the libbacktrace library for symbolizing stack traces (Default: false)

use_memory_defaults_optimized_for_ysql

If true, the recommended defaults for the memory usage settings take into account the amount of RAM and cores available and are optimized for using YSQL. If false, the recommended defaults will be the old defaults, which are more suitable for YCQL but do not take into account the amount of RAM and cores available. (Default: false)

use_monotime_for_traces

Flag to enable use of MonoTime::Now() instead of CoarseMonoClock::Now(). CoarseMonoClock is much cheaper so it is better to use it. However if we need more accurate sub-millisecond level breakdown, we could use MonoTime. (Default: false - advanced, runtime)

use_multi_level_index

Whether to use multi-level data index. (Default: true)

use_node_hostname_for_local_tserver

Connect to local t-server by using host name instead of local IP (Default: false)

use_node_to_node_encryption

Use node to node encryption. (Default: false)

use_offset_based_key_decoding

Deprecated (Default: false - deprecated, runtime)

use_preelection

Whether to use pre election, before doing actual election. (Default: true)

use_priority_thread_pool_for_compactions

When true priority thread pool will be used for compactions, otherwise Env thread pool with Priority::LOW will be used. (Default: true - runtime)

use_priority_thread_pool_for_flushes

When true priority thread pool will be used for flushes, otherwise Env thread pool with Priority::HIGH will be used. (Default: false - runtime)

use_private_ip

When to use private IP for connection. cloud - would use private IP if destination node is located in the same cloud. region - would use private IP if destination node is located in the same cloud and region. zone - would use private IP if destination node is located in the same cloud, region and zone.never - would never use private IP if broadcast address is specified. (Default: never)

v

Show all VLOG(m) messages for m <= this. Overridable by --vmodule. (Default: 0 - runtime, advanced, stable)

verify_client_endpoint

Whether client endpoint should be verified. (Default: false)

verify_encrypted_meta_block_checksums

Whether to verify checksums for meta blocks of encrypted SSTables. (Default: true)

verify_index_rate_rows_per_sec

Rate of at which the indexed table's entries are read during index consistency checks.This is a per-tablet flag, i.e. a tserver responsible for multiple tablets could be processing more than this. (Default: 0 - advanced, runtime)

verify_index_read_batch_size

The batch size for reading the index. (Default: 128 - advanced, runtime)

verify_server_endpoint

Whether server endpoint should be verified. (Default: true)

verify_tablet_data_interval_sec

The tick interval time for the tablet data integrity verification background task. This defaults to 0, which means disable the background task. (Default: 0)

version

show version and build info and exit (Default: false - stable)

version_file_json_path

Path to directory containing JSON file with version info. (Default: None)

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. (Default: None - advanced, stable)

wait_for_safe_op_id_to_apply_default_timeout_ms

Timeout used by WaitForSafeOpIdToApply when it was not specified by caller. (Default: 15000)

wait_for_ysql_backends_catalog_version_client_master_rpc_margin_ms

For a WaitForYsqlBackendsCatalogVersion client-to-master RPC, the amount of time to reserve out of the RPC timeout to respond back to client. If margin is zero, client will determine timeout without receiving response from master. Margin should be set high enough to cover processing and RPC time for the response. It should be lower than wait_for_ysql_backends_catalog_version_client_master_rpc_timeout_ms. (Default: 5000 - advanced, runtime)

wait_for_ysql_backends_catalog_version_client_master_rpc_timeout_ms

WaitForYsqlBackendsCatalogVersion client-to-master RPC timeout. Specifically, both the postgres-to-tserver and tserver-to-master RPC timeout. (Default: 20000 - advanced)

wait_hybrid_time_sleep_interval_us

Sleep interval in microseconds that will be used while waiting for specific hybrid time. (Default: 10000)

wait_queue_poll_interval_ms

The interval duration between wait queue polls to fetch transaction statuses of active blockers. (Default: 100)

wait_replication_drain_tserver_max_retry

Maximum number of retry that a tserver will poll its tablets until the tabletsare all caught-up in the replication, before responding to the caller. (Default: 3 - runtime)

wait_replication_drain_tserver_retry_interval_ms

Time in microseconds that a tserver will sleep between each iteration of polling its tablets until the tablets are all caught-up in the replication. (Default: 100 - runtime)

web_log_bytes

The maximum number of bytes to display on the debug webserver's log page (Default: 1048576 - advanced, runtime)

webserver_authentication_domain

Domain used for debug webserver authentication (Default: None)

webserver_ca_certificate_file

The location of the certificate of the certificate authority of the debug webserver's SSL certificate file, in .pem format. If empty, system-wide CA certificates are used. (Default: None)

webserver_certificate_file

The location of the debug webserver's SSL certificate file, in .pem format. If empty, webserver SSL support is not enabled (Default: None)

webserver_compression_threshold_kb

The threshold of response size above which compression is performed.Default value is 4KB (Default: 4 - advanced, runtime)

webserver_doc_root

Files under <webserver_doc_root> are accessible via the debug webserver. Defaults to $YB_HOME/www, or if $YB_HOME is not set, disables the document root (Default: None - advanced)

webserver_enable_doc_root

If true, webserver may serve static files from the webserver_doc_root (Default: true - advanced)

webserver_interface

Interface to start debug webserver on. If blank, webserver binds to first host IPpresent in the list of comma separated rpc_bind_addresses (Default: None - advanced)

webserver_max_post_length_bytes

The maximum length of a POST request that will be accepted by the embedded web server. (Default: 1048576 - advanced, runtime)

webserver_num_worker_threads

Maximum number of threads to start for handling web server requests (Default: 50 - advanced)

webserver_password_file

(Optional) Location of .htpasswd file containing user names and hashed passwords for debug webserver authentication (Default: None)

webserver_port

Port to bind to for the web server (Default: 9000 - stable)

webserver_private_key_file

The location of the debug webserver's SSL private key file, in .pem format. If empty, the private key is assumed to be located in the same file as the certificate. (Default: None)

webserver_private_key_password

The password for the debug webserver's SSL private key. If empty, no password is used. (Default: None)

webserver_redirect_http_to_https

Redirect HTTP requests to the embedded webserver to HTTPS if HTTPS is enabled. (Default: false)

webserver_strict_transport_security

Header is cached by the browser for the specified 'max-age' and forces it to redirect any http request to https to avoid man-in-the-middle attacks. The original http request is never sent. (Default: false - runtime)

webserver_zlib_compression_level

The zlib compression level.Lower compression levels result in faster execution, but less compression (Default: 1 - advanced, runtime)

writable_file_use_fsync

Use fsync(2) instead of fdatasync(2) for synchronizing dirty data to disk. (Default: false - advanced)

xcluster_checkpoint_max_staleness_secs

The maximum interval in seconds that the xcluster checkpoint map can go without being refreshed. If the map is not refreshed within this interval, it is considered stale, and all WAL segments will be retained until the next refresh. Setting to 0 will disable Opid-based and time-based WAL segment retention for XCluster. (Default: 300 - runtime)

xcluster_consistent_wal_safe_time_frequency_ms

Frequency in milliseconds at which apply safe time is computed. (Default: 250 - runtime)

xcluster_consumer_thread_pool_size

Override the max thread pool size for XClusterConsumerHandler, which is used by XClusterPoller. If set to 0, then the thread pool will use the default size (number of cpus on the system). (Default: 0 - advanced)

xcluster_enable_packed_rows_support

Enables rewriting of packed rows with xcluster consumer schema version (Default: true - advanced, runtime)

xcluster_enable_subtxn_abort_propagation

Enable including information about which subtransactions aborted in CDC changes (Default: true - stable, auto, runtime)

xcluster_get_changes_max_send_rate_mbps

Server-wide max send rate in megabytes per second for GetChanges response traffic. Throttles xcluster but not cdc traffic. (Default: 100 - runtime)

xcluster_poller_task_delay_considered_stuck_secs

Maximum amount of time between tasks of a xcluster poller above which it is considered as stuck. (Default: 3600 - runtime)

xcluster_safe_time_update_interval_secs

The interval at which xcluster safe time is computed. This controls the staleness of the data seen when performing database level xcluster consistent reads. If there is any additional lag in the replication, then it will add to the overall staleness of the data. (Default: 1 - runtime)

xcluster_svc_queue_length

RPC queue length for the xCluster service (Default: 5000 - advanced)

yb_backend_oom_score_adj

oom_score_adj of postgres backends in linux environments (Default: 900)

yb_client_admin_operation_timeout_sec

The number of seconds after which an admin operation should timeout. (Default: 120)

yb_client_num_reactors

Number of reactor threads for the yb client to communicate with different tservers. (Default: 16)

yb_enable_cdc_consistent_snapshot_streams

Enable support for CDC Consistent Snapshot Streams (Default: true - stable, auto, runtime)

yb_enable_read_committed_isolation

Defines how READ COMMITTED (which is our default SQL-layer isolation) and READ UNCOMMITTED are mapped internally. If false (default), both map to the stricter REPEATABLE READ implementation. If true, both use the new READ COMMITTED implementation instead. (Default: false)

yb_enable_valgrind

True to run postgres under Valgrind. Must compile with --no-tcmalloc (Default: false)

yb_num_shards_per_tserver

The default number of shards per table per tablet server when a table is created. If the value is -1, the system automatically determines an appropriate value based on the number of CPU cores; it is determined to 1 if enable_automatic_tablet_splitting is set to true. (Default: -1 - runtime)

yb_pg_terminate_child_backend

Terminate other active server processes when a backend is killed (Default: false)

yb_system_namespace_readonly

Set system keyspace read-only. (Default: true - runtime)

yb_test_name

Specifies test name this daemon is running as part of. (Default: None)

yb_webserver_oom_score_adj

oom_score_adj of YSQL webserver in linux environments (Default: 900)

ybclient_print_trace_every_n

Controls the rate at which traces from ybclient are printed. Setting this to 0 disables printing the collected traces. (Default: 0 - advanced, runtime)

ycql_allow_in_op_with_order_by

Allow IN to be used with ORDER BY clause (Default: false - advanced)

ycql_allow_local_calls_in_curr_thread

Whether or not to allow local calls on the RPC thread. (Default: true - runtime)

ycql_allow_non_authenticated_password_reset

If to allow non-authenticated user to reset the password. (Default: false - runtime)

ycql_audit_excluded_categories

Comma separated list of categories to be excluded from the audit log (Default: None)

ycql_audit_excluded_keyspaces

Comma separated list of keyspaces to be excluded from the audit log (Default: system,system_schema,system_virtual_schema,system_auth)

ycql_audit_excluded_users

Comma separated list of users to be excluded from the audit log (Default: None)

ycql_audit_included_categories

Comma separated list of categories to be included in the audit log, if none - includes all (non-excluded) categories (Default: None)

ycql_audit_included_keyspaces

Comma separated list of keyspaces to be included in the audit log, if none - includes all (non-excluded) keyspaces (Default: None)

ycql_audit_included_users

Comma separated list of users to be included in the audit log, if none - includes all (non-excluded) users (Default: None)

ycql_audit_log_level

Severity level at which an audit will be logged. Could be INFO, WARNING, or ERROR (Default: ERROR)

ycql_bind_collection_assignment_using_column_name

Enable using column name for binding the value of subscripted collection column (Default: false - runtime)

ycql_cache_login_info

Use authentication information cached locally. (Default: false)

ycql_consistent_transactional_paging

Whether to enforce consistency of data returned for second page and beyond for YCQL queries on transactional tables. If true, read restart errors could be returned to prevent inconsistency. If false, no read restart errors are returned but the data may be stale. The latter is preferable for long scans. The data returned for the first page of results is never stale regardless of this flag. (Default: false)

ycql_disable_index_updating_optimization

If true all secondary indexes must be updated even if the update does not change the index data. (Default: false - advanced)

ycql_enable_alter_rename_column_with_index

Whether renaming a column which is used in an index is enabled. (Default: false - advanced, runtime)

ycql_enable_audit_log

Enable YCQL audit. Use ycql_audit_* flags for fine-grained configuration (Default: false - runtime)

ycql_enable_packed_row

Whether packed row is enabled for YCQL. (Default: false - runtime)

ycql_enable_stat_statements

If enabled, it will track queries and dump the metrics on http://localhost:12000/statements. (Default: true - runtime)

ycql_enable_tracing_flag

If enabled, setting TRACING ON in cqlsh will cause the server to enable tracing for the requested RPCs and print them. Use this as a safety flag to disable tracing if an errant application has TRACING enabled by mistake. (Default: true - runtime)

ycql_jsonb_use_member_cache

Whether we use member cache during jsonb processing in YCQL. (Default: true - runtime)

ycql_ldap_base_dn

Specifies the base directory to begin the user name search (Default: None)

ycql_ldap_bind_dn

Specifies the username to perform the initial search when doing search + bind authentication (Default: None - sensitive_info)

ycql_ldap_bind_passwd

Password for username being used to perform the initial search when doing search + bind authentication (Default: None - sensitive_info)

ycql_ldap_search_attribute

Attribute to match against the username in the search when doing search + bind authentication. If no attribute is specified, the uid attribute is used. (Default: None)

ycql_ldap_search_filter

The search filter to use when doing search + bind authentication. (Default: None)

ycql_ldap_server

LDAP server of the form <scheme>://<ip>:<port> (Default: None)

ycql_ldap_tls

Connect to LDAP server using TLS encryption. (Default: false)

ycql_ldap_user_prefix

String used for prepending the user name when forming the DN for binding to the LDAP server (Default: None)

ycql_ldap_user_suffix

String used for appending the user name when forming the DN for binding to the LDAP Server. (Default: None)

ycql_ldap_users_to_skip_csv

Users that are authenticated via the local password check instead of LDAP (if ycql_use_ldap=true). This is a comma separated list (Default: None - sensitive_info)

ycql_num_tablets

The number of tablets per YCQL table. Default value is -1. Colocated tables are not affected. If its value is not set then (1) the value of yb_num_shards_per_tserver is used in conjunction with the number of tservers to determine the tablet count, (2) in case of low number of CPU cores (<4) and enable_automatic_tablet_splitting is set to true, neither the number of tservers nor yb_num_shards_per_tserver are taken into account to determine the tablet count, the value is determined on base the number of CPU cores only.If the user explicitly specifies a value of the tablet count in the Create Table DDL statement (with tablets = x syntax) then it takes precedence over the value of this flag. Needs to be set at tserver. (Default: -1 - runtime)

ycql_packed_row_size_limit

Packed row size limit for YCQL in bytes. 0 to make this equal to SSTable block size. (Default: 0)

ycql_require_drop_privs_for_truncate

Require DROP TABLE permission in order to truncate table (Default: false)

ycql_serial_operation_in_transaction_block

If true, operations within a transaction block must be executed in order, at least semantically speaking. (Default: true)

ycql_suppress_group_by_error

Enable to suppress the error raised when using GROUP BY clause (Default: false - stable, auto, runtime)

ycql_use_ldap

Use LDAP for user logins (Default: false)

ycql_use_local_transaction_tables

Whether or not to use local transaction tables when possible for YCQL transactions. (Default: false - runtime)

yedis_enable_flush

Enables FLUSHDB and FLUSHALL commands in yedis. (Default: true)

yql_allow_compatible_schema_versions

Allow YCQL requests to be accepted even if they originate from a client who is ahead of the server's schema, but is determined to be compatible with the current version. (Default: true - advanced, runtime)

yql_max_value_size

Maximum size of a value in the Yugabyte Query Layer (Default: 67108864)

ysql_analyze_dump_intentsdb_metrics

Whether to return changed intentsdb metrics for YSQL queries in RPC response. (Default: false - runtime)

ysql_analyze_dump_metrics

Whether to return changed metrics for YSQL queries in RPC response. (Default: true - runtime)

ysql_auto_analyze_scale_factor

A fraction of the table size to add to ysql_auto_analyze_threshold when deciding whether to trigger an ANALYZE. (Default: 0.10000000000000001 - runtime)

ysql_auto_analyze_threshold

The minimum number of mutations needed to trigger an ANALYZE on a table. (Default: 50 - runtime)

ysql_backward_prefetch_scale_factor

Deprecated (Default: 0 - deprecated, runtime)

ysql_beta_features

Whether to enable all ysql beta features (Default: false)

ysql_catalog_preload_additional_table_list

A list of catalog tables that YSQL preloads additionally upon connection start-up and cache refreshes. Catalog table names must start with pg_.Invalid catalog names are ignored. Comma separated. Example: pg_range,pg_proc.If both ysql_catalog_preload_additional_tables and ysql_catalog_preload_additional_table_list are set, we take a union of both the default list and the user-specified list. (Default: None)

ysql_catalog_preload_additional_tables

If true, YB catalog preloads a default set of tables upon connection creation and cache refresh: pg_am,pg_amproc,pg_cast,pg_cast,pg_inherits,pg_policy,pg_proc,pg_tablespace,pg_trigger. (Default: false)

ysql_cdc_active_replication_slot_window_ms

Determines the window in milliseconds in which if a client has consumed the changes of a ReplicationSlot across any tablet, then it is considered to be actively used. ReplicationSlots which haven't been used in this interval areconsidered to be inactive. (Default: 60000 - advanced, runtime)

ysql_client_read_write_timeout_ms

Timeout for YSQL's yb-client read/write operations. Falls back on max(client_read_write_timeout_ms, 600s) if set to -1. (Default: -1)

ysql_clone_pg_schema_rpc_timeout_ms

Timeout used by the master when attempting to clone PG Schema objects using an async task to tserver (Default: 600000 - advanced, runtime)

ysql_cluster_level_mutation_persist_interval_ms

Interval at which the reported node level table mutation counts are persisted to the underlying YCQL table by the central auto analyze service (Default: 10000 - runtime)

ysql_cluster_level_mutation_persist_rpc_timeout_ms

Timeout for rpcs involved in persisting mutations in the auto-analyze table. (Default: 10000 - runtime)

ysql_colocate_database_by_default

Enable colocation by default on each database. (Default: false)

ysql_conn_mgr_dowarmup

Enable precreation of server connections in Ysql Connection Manager. If set false, the server connections are created lazily (on-demand) in Ysql Connection Manager. (Default: false)

ysql_conn_mgr_idle_time

Specifies the maximum idle (secs) time allowed for database connections created by the Ysql Connection Manager. If a database connection remains idle without serving a client connection for a duration equal to or exceeding the value provided, it will be automatically closed by the Ysql Connection Manager. (Default: 60)

ysql_conn_mgr_internal_conn_db

Database to which Ysql Connection Manager will make connections to inorder to execute internal queries. (Default: yugabyte)

ysql_conn_mgr_max_client_connections

Total number of concurrent client connections that the Ysql Connection Manager allows. (Default: 10000)

ysql_conn_mgr_max_conns_per_db

Maximum number of concurrent database connections Ysql Connection Manager can create per pool. (Default: 0)

ysql_conn_mgr_min_conns_per_db

Minimum number of physical connections, that will be present in pool. This limit is not considered while closing a broken physical connection. (Default: 1)

ysql_conn_mgr_num_workers

Number of worker threads used by Ysql Connection Manager. If set as 0 (default value), the number of worker threads will be half of the number of CPU cores. (Default: 0)

ysql_conn_mgr_password

Password to be used by Ysql Connection Manager while creating database connections. (Default: yugabyte)

ysql_conn_mgr_port

Ysql Connection Manager port to which clients will connect. This must be different from the postgres port set via pgsql_proxy_bind_address. Default is 5433. (Default: 5433)

ysql_conn_mgr_stats_interval

Interval (in secs) at which the stats for Ysql Connection Manager will be updated. (Default: 10)

ysql_conn_mgr_use_unix_conn

Enable unix socket connections between Ysql Connection Manager and pg_backend. For pg_backend to accept unix socket connection by Ysql Connection Manager add 'local all yugabyte trust' in hba.conf (set ysql_hba_conf_csv as 'local all yugabyte trust'). (Default: true)

ysql_conn_mgr_username

Username to be used by Ysql Connection Manager while creating database connections. (Default: yugabyte)

ysql_conn_mgr_warmup_db

Database for which warmup needs to be done. (Default: yugabyte)

ysql_cron_database_name

Database in which pg_cron metadata is kept. (Default: yugabyte)

ysql_datestyle

The ysql display format for date and time values (Default: ISO, MDY - pg)

ysql_ddl_transaction_wait_for_ddl_verification

If set, DDL transactions will wait for DDL verification to complete before returning to the client. (Default: true - runtime)

ysql_default_transaction_isolation

The ysql transaction isolation level (Default: read committed - pg)

ysql_disable_global_impact_ddl_statements

If true, disable global impact ddl statements in per database catalog version mode. (Default: false)

ysql_disable_per_tuple_memory_context_in_update_relattrs

Deprecated (Default: false - deprecated, runtime)

ysql_disable_portal_run_context

Whether to use portal ybRunContext. (Default: false)

ysql_disable_server_file_access

If true, disables read, write, and execute of local server files. File access can be re-enabled if set to false. (Default: false)

ysql_enable_auth

True to enforce password authentication for all connections (Default: false)

ysql_enable_auto_analyze_service

Enable the Auto Analyze service which automatically triggers ANALYZE to update table statistics for tables which have changed more than a configurable threshold. (Default: false - experimental, runtime)

ysql_enable_colocated_tables_with_tablespaces

Enable creation of colocated tables with a specified placement policy via a tablespace.If true, creating a colocated table will colocate the table on an implicit tablegroup that is determined by the tablespace it uses. We turn the feature off by default. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'ysql_enable_colocated_tables_with_tablespaces' must be set in --allowed_preview_flags_csv. (Default: false - preview)

ysql_enable_create_database_oid_collision_retry

Whether to retry YSQL CREATE DATABASE statement if oid collision happens. (Default: true - advanced)

ysql_enable_pack_full_row_update

Whether to enable packed row for full row update. (Default: false - runtime)

ysql_enable_packed_row

Whether packed row is enabled for YSQL. (Default: true - stable, auto, runtime)

ysql_enable_packed_row_for_colocated_table

Whether to enable packed row for colocated tables. (Default: true - runtime)

ysql_enable_profile

Enable PROFILE feature. (Default: false)

ysql_enable_read_request_caching

Enable read request caching (Default: true)

ysql_enable_table_mutation_counter

Enable counting of mutations on a per-table basis. These mutations are used to automatically trigger ANALYZE as soon as the mutations of a table cross a certain threshold (decided based on ysql_auto_analyze_tuples_threshold and ysql_auto_analyze_scale_factor). (Default: false - experimental)

ysql_enable_update_batching

Deprecated (Default: false - deprecated, runtime)

ysql_follower_reads_avoid_waiting_for_safe_time

Controls whether ysql follower reads that specify a not-yet-safe read time should be rejected. This will force them to go to the leader, which will likely be faster than waiting for safe time to catch up. (Default: true - advanced, runtime)

ysql_forward_rpcs_to_local_tserver

DEPRECATED. Feature has been removed (Default: false)

ysql_hba_conf

Deprecated, use ysql_hba_conf_csv flag instead. Comma separated list of postgres hba rules (in order) (Default: None - sensitive_info)

ysql_hba_conf_csv

CSV formatted line represented list of postgres hba rules (in order) (Default: None - sensitive_info)

ysql_ident_conf_csv

CSV formatted line represented list of postgres ident map rules (in order) (Default: None)

ysql_log_failed_docdb_requests

Log failed docdb requests. (Default: false)

ysql_log_min_duration_statement

Sets the duration of each completed ysql statement to be logged if the statement ran for at least the specified number of milliseconds. Zero prints all queries. -1 turns this feature off. (Default: -1 - pg, runtime)

ysql_log_min_messages

Sets the lowest ysql message level to log (Default: warning - pg)

ysql_log_statement

Sets which types of ysql statements should be logged (Default: none - pg)

ysql_max_connections

Overrides the maximum number of concurrent ysql connections. If set to 0, Postgres will dynamically determine a platform-specific value (Default: 0 - pg)

ysql_max_read_restart_attempts

Deprecated (Default: 0 - deprecated, runtime)

ysql_max_write_restart_attempts

Deprecated (Default: 0 - deprecated, runtime)

ysql_min_new_version_ignored_count

Minimum consecutive number of times that a tserver is allowed to ignore an older catalog version that is retrieved from a tserver-master heartbeat response. (Default: 10 - runtime)

ysql_minimal_catalog_caches_preload

Fill postgres' caches with system items only (Default: false)

ysql_node_level_mutation_reporting_interval_ms

Interval at which the node level table mutation counts are sent to the auto analyze service which tracks table mutation counters at the cluster level. (Default: 5000 - runtime)

ysql_node_level_mutation_reporting_timeout_ms

Timeout for mutation reporting rpc to auto-analyze service. (Default: 5000 - runtime)

ysql_non_txn_copy

Execute COPY inserts non-transactionally. (Default: false)

ysql_num_shards_per_tserver

The default number of shards per YSQL table per tablet server when a table is created. If the value is -1, the system automatically determines an appropriate value based on the number of CPU cores; it is determined to 1 if enable_automatic_tablet_splitting is set to true. (Default: -1 - runtime)

ysql_num_tablets

The number of tablets per YSQL table. Default value is -1. If its value is not set then (1) the value of ysql_num_shards_per_tserver is used in conjunction with the number of tservers to determine the tablet count, (2) in case of low number of CPU cores (<4) and enable_automatic_tablet_splitting is set to true, neither the number of tservers nor ysql_num_shards_per_tserver are taken into account to determine the tablet count, the value is determined on base the number of CPU cores only.If the user explicitly specifies a value of the tablet count in the Create Table DDL statement (split into x tablets syntax) then it takes precedence over the value of this flag. Needs to be set at tserver. (Default: -1 - runtime)

ysql_output_buffer_size

Size of postgres-level output buffer, in bytes. While fetched data resides within this buffer and hasn't been flushed to client yet, we're free to transparently restart operation in case of restart read error. (Default: 262144)

ysql_pack_inserted_value

Enabled packing inserted columns into a single packed value in postgres layer. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'ysql_pack_inserted_value' must be set in --allowed_preview_flags_csv. (Default: false - preview, runtime)

ysql_packed_row_size_limit

Packed row size limit for YSQL in bytes. 0 to make this equal to SSTable block size. (Default: 0)

ysql_pg_conf

Deprecated, use the ysql_pg_conf_csv flag instead. Comma separated list of postgres setting assignments (Default: None)

ysql_pg_conf_csv

List of postgres configuration parameters separated with comma (,). Parameters should be of format: <name> [=] <value>. The equal sign between name and value is optional. Whitespace is insignificant (except within a single-quoted (') parameter value) and blank parameters are ignored. Hash marks (#) designate the remainder of the parameter as a comment. Parameter values that are not simple identifiers or numbers must be single-quoted ('). To embed a single quote (') in a parameter value, write either two quotes('') (preferred) or backslash-quote (&#39;). If the parameter contains a comma (,) or double-quote (") then the entire parameter must be quoted with double-quote ("): "<name> [=] <value>". Two double-quotes ("") in a double-quoted (") parameter represents a single double-quote ("). If the list contains multiple entries for the same parameter, all but the last one are ignored. NOTE: Not all parameters take effect at runtime. When changed at runtime, the postgresql.conf file is updated and a SIGHUP signal is used to notify the postmaster. Check https://www.postgresql.org/docs/current/view-pg-settings.html for information about which parameters take effect at runtime. (Default: None)

ysql_prefetch_limit

Deprecated (Default: 0 - deprecated, runtime)

ysql_rc_force_pick_read_time_on_pg_client

When resetting read time for a statement in Read Commited isolation level, pick read time on the PgClientService instead of allowing the tserver to pick one. (Default: false - advanced)

ysql_request_limit

Maximum number of requests to be sent at once (Default: 1024)

ysql_scan_deadline_margin_ms

Scan deadline is calculated by adding client timeout to the time when the request was received. It defines the moment in time when client has definitely timed out and if the request is yet in processing after the deadline, it can be canceled. Therefore to prevent client timeout, the request handler should return partial result and paging information some time before the deadline. That's what the ysql_scan_deadline_margin_ms is for. It should account for network and processing delays. (Default: 1000)

ysql_scan_timeout_multiplier

Deprecated (Default: 0 - deprecated, runtime)

ysql_select_parallelism

Number of read requests to issue in parallel to tablets of a table for SELECT. (Default: -1)

ysql_sequence_cache_method

Where sequence values are cached for both existing and new sequences. Valid values are "connection" and "server" (Default: connection)

ysql_sequence_cache_minval

Set how many sequence numbers to be preallocated in cache. (Default: 100)

ysql_serializable_isolation_for_ddl_txn

Whether to use serializable isolation for separate DDL-only transactions. By default, repeatable read isolation is used. This flag should go away once full transactional DDL is implemented. (Default: false)

ysql_session_max_batch_size

Use session variable ysql_session_max_batch_size instead. Maximum batch size for buffered writes between PostgreSQL server and YugaByte DocDB services (Default: 3072)

ysql_skip_row_lock_for_update

By default DocDB operations for YSQL take row-level locks. If set to true, DocDB will instead take finer column-level locks instead of locking the whole row. This may cause issues with data integrity for operations with implicit dependencies between columns. (Default: false - stable, auto, runtime)

ysql_sleep_before_retry_on_txn_conflict

Whether to sleep before retrying the write on transaction conflicts. (Default: true)

ysql_suppress_unsafe_alter_notice

Suppress NOTICE on use of unsafe ALTER statements (Default: false)

ysql_suppress_unsupported_error

Suppress ERROR on use of unsupported SQL statement and use WARNING instead (Default: false)

ysql_timezone

Overrides the default ysql timezone for displaying and interpreting timestamps. If no value is provided, Postgres will determine one based on the environment (Default: None - pg)

ysql_transaction_abort_timeout_ms

Max amount of time we can wait for active transactions to abort on a tablet after DDL (eg. DROP TABLE) is executed. This deadline is same as unresponsive_ts_rpc_timeout_ms (Default: 900000)

ysql_use_flat_doc_reader

Use DocDBTableReader optimization that relies on having at most 1 subkey for YSQL. (Default: true - runtime)

ysql_use_packed_row_v2

Whether to use packed row V2 when row packing is enabled. NOTE: This flag protects a feature that is currently in preview. In order for it to be modified, 'ysql_use_packed_row_v2' must be set in --allowed_preview_flags_csv. (Default: false - preview, runtime)

ysql_use_relcache_file

Use relcache init file (Default: true)

ysql_wait_until_index_permissions_timeout_ms

Deprecated (Default: 0 - deprecated, runtime)

ysql_yb_ash_circular_buffer_size

Size (in KiBs) of ASH circular buffer that stores the samples (Default: 0 - pg)

ysql_yb_ash_enable_infra

Allocate shared memory for ASH, start the background worker, create instrumentation hooks and enable querying the yb_active_session_history view. (Default: false - preview, pg)

ysql_yb_ash_sample_size

Number of samples captured from each component per sampling event (Default: 500 - pg, runtime)

ysql_yb_ash_sampling_interval

Deprecated (Default: 0 - deprecated, runtime)

ysql_yb_ash_sampling_interval_ms

Time (in milliseconds) between two consecutive sampling events (Default: 1000 - pg, runtime)

ysql_yb_bnl_batch_size

Batch size of nested loop joins. (Default: 1024 - pg, runtime)

ysql_yb_bypass_cond_recheck

Bypass index condition recheck at the YSQL layer if the condition was pushed down. (Default: true - pg, stable, auto, runtime)

ysql_yb_ddl_rollback_enabled

If true, upon failure of a YSQL DDL transaction that affects the DocDB syscatalog, the YB-Master will rollback the changes made to the DocDB syscatalog. (Default: true - pg, runtime)

ysql_yb_default_replica_identity

The default replica identity to be assigned to user defined tables at the time of creation. The flag is case sensitive and can take four possible values, 'FULL', 'DEFAULT', 'NOTHING' and 'CHANGE'. If any value other than these is assigned to the flag, the replica identity CHANGE will be used as default at the time of table creation. (Default: CHANGE - pg)

ysql_yb_disable_wait_for_backends_catalog_version

Disable waiting for backends to have up-to-date pg_catalog. This could cause correctness issues, which could be mitigated by setting high ysql_yb_index_state_flags_update_delay. Although it is runtime-settable, the effects won't take place for any in-progress queries. (Default: false - pg, runtime)

ysql_yb_enable_add_column_missing_default

Enable using the default value for existing rows after an ADD COLUMN ... DEFAULT operation (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_alter_table_rewrite

Enable ALTER TABLE rewrite operations (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_ash

Starts sampling and instrumenting YSQL and YCQL queries, and various background activities. This does nothing if ysql_yb_enable_ash_infra is disabled. (Default: false - pg, preview, runtime)

ysql_yb_enable_base_scans_cost_model

Enable cost model enhancements (Default: false - pg, preview, runtime)

ysql_yb_enable_ddl_atomicity_infra

Enables YSQL DDL atomicity (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_expression_pushdown

Push supported expressions from ysql down to DocDB for evaluation. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_fkey_catcache

Enable preloading of foreign key information into the relation cache. (Default: true - pg, runtime)

ysql_yb_enable_hash_batch_in

Enable batching of hash in queries. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_index_aggregate_pushdown

Push supported aggregates from ysql down to DocDB for evaluation. Affects IndexScan only. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_memory_tracking

Enables tracking of memory consumption of the PostgreSQL process. This enhances garbage collection behaviour and memory usage observability. (Default: true - pg, runtime)

ysql_yb_enable_optimizer_statistics

Enables use of the PostgreSQL selectivity estimation which utilizes table statistics collected with ANALYZE. When disabled, a simpler heuristics based selectivity estimation is used. (Default: false - pg, preview, runtime)

ysql_yb_enable_pg_locks

Enable the pg_locks view. This view provides information about the locks held by active postgres sessions. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_replica_identity

Enable replica identity command for Alter Table query (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_replication_commands

Enable logical replication commands for Publication and Replication Slots (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_replication_slot_consumption

Enable consumption of changes via replication slots.Requires yb_enable_replication_commands to be true. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_saop_pushdown

Push supported scalar array operations from ysql down to DocDB for evaluation. (Default: true - pg, stable, auto, runtime)

ysql_yb_enable_sequence_pushdown

Allow nextval() to fetch the value range and advance the sequence value in a single operation (Default: true - pg, stable, auto, runtime)

ysql_yb_explicit_row_locking_batch_size

Batch size of explicit row locking. (Default: 1024 - pg, runtime)

ysql_yb_fetch_row_limit

Maximum number of rows to fetch per scan. (Default: 1024 - pg, runtime)

ysql_yb_fetch_size_limit

Maximum size of a fetch response. (Default: 0 - pg, runtime)

ysql_yb_follower_reads_behavior_before_fixing_20482

Controls whether ysql follower reads that is enabled inside a transaction block should take effect in the same transaction or not. Prior to fixing #20482 the behavior was that the change does not affect the current transaction but only affects subsequent transactions. The flag is intended to be used if there is a customer who relies on the old behavior. (Default: false - advanced, pg, runtime)

ysql_yb_index_state_flags_update_delay

Delay in milliseconds between stages of online index build. For testing purposes. (Default: 0 - pg, runtime)

ysql_yb_locks_max_transactions

Sets the maximum number of transactions for which to return rows in pg_locks. (Default: 16 - pg, runtime)

ysql_yb_locks_min_txn_age

Sets the minimum transaction age for results from pg_locks. (Default: 1000 - pg, runtime)

ysql_yb_locks_txn_locks_per_tablet

Sets the maximum number of rows to return per transaction per tablet in pg_locks. (Default: 200 - pg, runtime)

ysql_yb_parallel_range_rows

The number of rows to plan per parallel worker, zero disables the feature (Default: 0 - pg, preview, runtime)

ysql_yb_pushdown_is_not_null

Push down IS NOT NULL condition filters (Default: true - pg, stable, auto, runtime)

ysql_yb_pushdown_strict_inequality

Push down strict inequality filters (Default: true - pg, stable, auto, runtime)

ysql_yb_read_after_commit_visibility

Determines the behavior of read-after-commit-visibility guarantee. (Default: strict - pg)

ysql_yb_reorderbuffer_max_changes_in_memory

Maximum number of changes kept in memory per transaction in reorder buffer, which is used in streaming changes via logical replication . After that, changes are spooled to disk. (Default: 4096 - pg, runtime)

ysql_yb_skip_redundant_update_ops

Enables the comparison of old and new values of columns specified in the SET clause of YSQL UPDATE queries to skip redundant secondary index updates and redundant constraint checks. (Default: true - advanced, pg, runtime)

ysql_yb_test_block_index_phase

Block the given index phase from proceeding. Valid names are indisready, build, indisvalid and finish. For testing purposes. (Default: None - pg)

ysql_yb_toast_catcache_threshold

Size threshold in bytes for a catcache tuple to be compressed. (Default: -1 - pg, runtime)

ysql_yb_update_optimization_infra

Enables optimizations of YSQL UPDATE queries. This includes (but not limited to) skipping redundant secondary index updates and redundant constraint checks. (Default: true - pg, stable, auto, runtime)

ysql_yb_wait_for_backends_catalog_version_timeout

Timeout in milliseconds to wait for backends to reach desired catalog versions. The actual time spent may be longer than that by as much as master flag wait_for_ysql_backends_catalog_version_client_master_rpc_timeout_ms. Setting to zero or less results in no timeout. Currently used by concurrent CREATE INDEX. (Default: 300000 - pg, runtime)

ysql_yb_walsender_poll_sleep_duration_empty_ms

Time in milliseconds for which Walsender waits before fetching the next batch of changes from the CDC service in case the last received response was empty. The response can be empty in case there are no DMLs happening in the system. (Default: 1000 - pg, runtime)

ysql_yb_walsender_poll_sleep_duration_nonempty_ms

Time in milliseconds for which Walsender waits before fetching the next batch of changes from the CDC service in case the last received response was non-empty. (Default: 1 - pg, runtime)

ysql_yb_xcluster_consistency_level

Controls the consistency level of xCluster replicated databases. Valid values are "database" and "tablet". (Default: database - pg)