> ## Documentation Index
> Fetch the complete documentation index at: https://cockroachlabs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Cluster Settings

export const InternalLink = ({version, path = "", children, ...props}) => {
  let detectedVersion = version || "stable";
  if (typeof window !== 'undefined' && !version) {
    const match = window.location.pathname.match(/\/docs\/([^/]+)/);
    if (match) {
      detectedVersion = match[1];
    }
  }
  const normalizedPath = path.startsWith("/") ? path.slice(1) : path;
  return <a href={`/docs/${detectedVersion}/${normalizedPath}`} {...props}>
      {children}
    </a>;
};

Cluster settings apply to all nodes of a CockroachDB cluster and control, for example, whether or not to share diagnostic details with Cockroach Labs as well as advanced options for debugging and cluster tuning.

They can be updated anytime after a cluster has been started, but only by a member of the `admin` role, to which the `root` user belongs by default.

<Note>
  In contrast to cluster-wide settings, node-level settings apply to a single node. They are defined by flags passed to the `cockroach start` command when starting a node and cannot be changed without stopping and restarting the node. For more details, see <InternalLink path="cockroach-start">Start a Node</InternalLink>.
</Note>

## Settings

<Danger>
  These cluster settings have a broad impact on CockroachDB internals and affect all applications, workloads, and users running on a CockroachDB cluster. For some settings, a <InternalLink path="set-vars#supported-variables">session setting</InternalLink> could be a more appropriate scope.
</Danger>

<Note>
  Use <InternalLink path="alter-role#set-default-session-variable-values-for-all-users">`ALTER ROLE ALL SET {sessionvar} = {val}`</InternalLink> instead of the `sql.defaults.*` <InternalLink path="cluster-settings">cluster settings</InternalLink>. This allows you to set a default value for all users for any <InternalLink path="set-vars">session variable</InternalLink> that applies during login, making the `sql.defaults.*` cluster settings redundant.
</Note>

<table className="crdb-fixed-table">
  <thead><tr><th style={{width: "32%"}}>Setting</th><th style={{width: "10%"}}>Type</th><th style={{width: "16%"}}>Default</th><th style={{width: "42%"}}>Description</th></tr></thead>

  <tbody>
    <tr><td><div id="setting-admission-disk-bandwidth-tokens-elastic-enabled" class="anchored"><code>admission.<wbr />disk\_bandwidth\_tokens.<wbr />elastic.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, and provisioned bandwidth for the disk corresponding to a store is configured, tokens for elastic work will be limited if disk bandwidth becomes a bottleneck</td></tr>
    <tr><td><div id="setting-admission-epoch-lifo-enabled" class="anchored"><code>admission.<wbr />epoch\_lifo.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when true, epoch-LIFO behavior is enabled when there is significant delay in admission</td></tr>
    <tr><td><div id="setting-admission-epoch-lifo-epoch-closing-delta-duration" class="anchored"><code>admission.<wbr />epoch\_lifo.<wbr />epoch\_closing\_delta\_duration</code></div></td><td>duration</td><td><code>5ms</code></td><td>the delta duration before closing an epoch, for epoch-LIFO admission control ordering</td></tr>
    <tr><td><div id="setting-admission-epoch-lifo-epoch-duration" class="anchored"><code>admission.<wbr />epoch\_lifo.<wbr />epoch\_duration</code></div></td><td>duration</td><td><code>100ms</code></td><td>the duration of an epoch, for epoch-LIFO admission control ordering</td></tr>
    <tr><td><div id="setting-admission-epoch-lifo-queue-delay-threshold-to-switch-to-lifo" class="anchored"><code>admission.<wbr />epoch\_lifo.<wbr />queue\_delay\_threshold\_to\_switch\_to\_lifo</code></div></td><td>duration</td><td><code>105ms</code></td><td>the queue delay encountered by a (tenant,priority) for switching to epoch-LIFO ordering</td></tr>
    <tr><td><div id="setting-admission-kv-enabled" class="anchored"><code>admission.<wbr />kv.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, work performed by the KV layer is subject to admission control</td></tr>
    <tr><td><div id="setting-admission-kv-stores-tenant-weights-enabled" class="anchored"><code>admission.<wbr />kv.<wbr />stores.<wbr />tenant\_weights.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when true, tenant weights are enabled for KV-stores admission control</td></tr>
    <tr><td><div id="setting-admission-kv-tenant-weights-enabled" class="anchored"><code>admission.<wbr />kv.<wbr />tenant\_weights.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when true, tenant weights are enabled for KV admission control</td></tr>
    <tr><td><div id="setting-admission-sql-kv-response-enabled" class="anchored"><code>admission.<wbr />sql\_kv\_response.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, work performed by the SQL layer when receiving a KV response is subject to admission control</td></tr>
    <tr><td><div id="setting-admission-sql-sql-response-enabled" class="anchored"><code>admission.<wbr />sql\_sql\_response.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, work performed by the SQL layer when receiving a DistSQL response is subject to admission control</td></tr>
    <tr><td><div id="setting-bulkio-backup-deprecated-full-backup-with-subdir-enabled" class="anchored"><code>bulkio.<wbr />backup.<wbr />deprecated\_full\_backup\_with\_subdir.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when true, a backup command with a user specified subdirectory will create a full backup at the subdirectory if no backup already exists at that subdirectory.</td></tr>
    <tr><td><div id="setting-bulkio-backup-file-size" class="anchored"><code>bulkio.<wbr />backup.<wbr />file\_size</code></div></td><td>byte size</td><td><code>128 MiB</code></td><td>target size for individual data files produced during BACKUP</td></tr>
    <tr><td><div id="setting-bulkio-backup-read-timeout" class="anchored"><code>bulkio.<wbr />backup.<wbr />read\_timeout</code></div></td><td>duration</td><td><code>5m0s</code></td><td>amount of time after which a read attempt is considered timed out, which causes the backup to fail</td></tr>
    <tr><td><div id="setting-bulkio-backup-read-with-priority-after" class="anchored"><code>bulkio.<wbr />backup.<wbr />read\_with\_priority\_after</code></div></td><td>duration</td><td><code>1m0s</code></td><td>amount of time since the read-as-of time above which a BACKUP should use priority when retrying reads</td></tr>
    <tr><td><div id="setting-bulkio-stream-ingestion-minimum-flush-interval" class="anchored"><code>bulkio.<wbr />stream\_ingestion.<wbr />minimum\_flush\_interval</code></div></td><td>duration</td><td><code>5s</code></td><td>the minimum timestamp between flushes; flushes may still occur if internal buffers fill up</td></tr>
    <tr><td><div id="setting-changefeed-aggregator-flush-jitter" class="anchored"><code>changefeed.<wbr />aggregator.<wbr />flush\_jitter</code></div></td><td>float</td><td><code>0</code></td><td>jitter aggregator flushes as a fraction of min\_checkpoint\_frequency. This setting has no effect if min\_checkpoint\_frequency is set to 0.</td></tr>
    <tr><td><div id="setting-changefeed-backfill-scan-request-size" class="anchored"><code>changefeed.<wbr />backfill.<wbr />scan\_request\_size</code></div></td><td>integer</td><td><code>524288</code></td><td>the maximum number of bytes returned by each scan request</td></tr>
    <tr><td><div id="setting-changefeed-balance-range-distribution-enable" class="anchored"><code>changefeed.<wbr />balance\_range\_distribution.<wbr />enable</code></div></td><td>boolean</td><td><code>false</code></td><td>if enabled, the ranges are balanced equally among all nodes</td></tr>
    <tr><td><div id="setting-changefeed-batch-reduction-retry-enabled" class="anchored"><code>changefeed.<wbr />batch\_reduction\_retry\_enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, kafka changefeeds upon erroring on an oversized batch will attempt to resend the messages with progressively lower batch sizes</td></tr>
    <tr><td><div id="setting-changefeed-event-consumer-worker-queue-size" class="anchored"><code>changefeed.<wbr />event\_consumer\_worker\_queue\_size</code></div></td><td>integer</td><td><code>16</code></td><td>if changefeed.event\_consumer\_workers is enabled, this setting sets the maxmimum number of events which a worker can buffer</td></tr>
    <tr><td><div id="setting-changefeed-event-consumer-workers" class="anchored"><code>changefeed.<wbr />event\_consumer\_workers</code></div></td><td>integer</td><td><code>0</code></td><td>the number of workers to use when processing events: \<0 disables, 0 assigns a reasonable default, >0 assigns the setting value. for experimental/core changefeeds and changefeeds using parquet format, this is disabled</td></tr>
    <tr><td><div id="setting-changefeed-fast-gzip-enabled" class="anchored"><code>changefeed.<wbr />fast\_gzip.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>use fast gzip implementation</td></tr>
    <tr><td><div id="setting-changefeed-lagging-ranges-polling-interval" class="anchored"><code>changefeed.<wbr />lagging\_ranges\_polling\_interval</code></div></td><td>duration</td><td><code>1m0s</code></td><td>the polling rate at which lagging ranges are checked and corresponding metrics are updated. will be removed in v23.2 onwards</td></tr>
    <tr><td><div id="setting-changefeed-lagging-ranges-threshold" class="anchored"><code>changefeed.<wbr />lagging\_ranges\_threshold</code></div></td><td>duration</td><td><code>3m0s</code></td><td>specifies the duration by which a range must be lagging behind the present to be considered as 'lagging' behind in metrics. will be removed in v23.2 in favor of a changefeed option</td></tr>
    <tr><td><div id="setting-changefeed-node-throttle-config" class="anchored"><code>changefeed.<wbr />node\_throttle\_config</code></div></td><td>string</td><td><code /></td><td>specifies node level throttling configuration for all changefeeeds</td></tr>
    <tr><td><div id="setting-changefeed-schema-feed-read-with-priority-after" class="anchored"><code>changefeed.<wbr />schema\_feed.<wbr />read\_with\_priority\_after</code></div></td><td>duration</td><td><code>1m0s</code></td><td>retry with high priority if we were not able to read descriptors for too long; 0 disables</td></tr>
    <tr><td><div id="setting-changefeed-sink-io-workers" class="anchored"><code>changefeed.<wbr />sink\_io\_workers</code></div></td><td>integer</td><td><code>0</code></td><td>the number of workers used by changefeeds when sending requests to the sink (currently webhook only): \<0 disables, 0 assigns a reasonable default, >0 assigns the setting value.</td></tr>
    <tr><td><div id="setting-cloudstorage-azure-concurrent-upload-buffers" class="anchored"><code>cloudstorage.<wbr />azure.<wbr />concurrent\_upload\_buffers</code></div></td><td>integer</td><td><code>1</code></td><td>controls the number of concurrent buffers that will be used by the Azure client when uploading chunks.Each buffer can buffer up to cloudstorage.write\_chunk.size of memory during an upload</td></tr>
    <tr><td><div id="setting-cloudstorage-http-custom-ca" class="anchored"><code>cloudstorage.<wbr />http.<wbr />custom\_ca</code></div></td><td>string</td><td><code /></td><td>custom root CA (appended to system's default CAs) for verifying certificates when interacting with HTTPS storage</td></tr>
    <tr><td><div id="setting-cloudstorage-timeout" class="anchored"><code>cloudstorage.<wbr />timeout</code></div></td><td>duration</td><td><code>10m0s</code></td><td>the timeout for import/export storage operations</td></tr>
    <tr><td><div id="setting-cluster-organization" class="anchored"><code>cluster.<wbr />organization</code></div></td><td>string</td><td><code /></td><td>organization name</td></tr>
    <tr><td><div id="setting-cluster-preserve-downgrade-option" class="anchored"><code>cluster.<wbr />preserve\_downgrade\_option</code></div></td><td>string</td><td><code /></td><td>disable (automatic or manual) cluster version upgrade from the specified version until reset</td></tr>
    <tr><td><div id="setting-diagnostics-active-query-dumps-enabled" class="anchored"><code>diagnostics.<wbr />active\_query\_dumps.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>experimental: enable dumping of anonymized active queries to disk when node is under memory pressure</td></tr>
    <tr><td><div id="setting-diagnostics-forced-sql-stat-reset-interval" class="anchored"><code>diagnostics.<wbr />forced\_sql\_stat\_reset.<wbr />interval</code></div></td><td>duration</td><td><code>2h0m0s</code></td><td>interval after which the reported SQL Stats are reset even if not collected by telemetry reporter. It has a max value of 24H.</td></tr>
    <tr><td><div id="setting-diagnostics-reporting-enabled" class="anchored"><code>diagnostics.<wbr />reporting.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enable reporting diagnostic metrics to cockroach labs, but is ignored for Trial or Free licenses</td></tr>
    <tr><td><div id="setting-diagnostics-reporting-interval" class="anchored"><code>diagnostics.<wbr />reporting.<wbr />interval</code></div></td><td>duration</td><td><code>1h0m0s</code></td><td>interval at which diagnostics data should be reported</td></tr>
    <tr><td><div id="setting-enterprise-license" class="anchored"><code>enterprise.<wbr />license</code></div></td><td>string</td><td><code /></td><td>the encoded cluster license</td></tr>
    <tr><td><div id="setting-external-graphite-endpoint" class="anchored"><code>external.<wbr />graphite.<wbr />endpoint</code></div></td><td>string</td><td><code /></td><td>if nonempty, push server metrics to the Graphite or Carbon server at the specified host:port</td></tr>
    <tr><td><div id="setting-external-graphite-interval" class="anchored"><code>external.<wbr />graphite.<wbr />interval</code></div></td><td>duration</td><td><code>10s</code></td><td>the interval at which metrics are pushed to Graphite (if enabled)</td></tr>
    <tr><td><div id="setting-feature-backup-enabled" class="anchored"><code>feature.<wbr />backup.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable backups, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-changefeed-enabled" class="anchored"><code>feature.<wbr />changefeed.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable changefeeds, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-export-enabled" class="anchored"><code>feature.<wbr />export.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable exports, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-import-enabled" class="anchored"><code>feature.<wbr />import.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable imports, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-restore-enabled" class="anchored"><code>feature.<wbr />restore.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable restore, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-schema-change-enabled" class="anchored"><code>feature.<wbr />schema\_change.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable schema changes, false to disable; default is true</td></tr>
    <tr><td><div id="setting-feature-stats-enabled" class="anchored"><code>feature.<wbr />stats.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable CREATE STATISTICS/ANALYZE, false to disable; default is true</td></tr>
    <tr><td><div id="setting-jobs-retention-time" class="anchored"><code>jobs.<wbr />retention\_time</code></div></td><td>duration</td><td><code>336h0m0s</code></td><td>the amount of time for which records for completed jobs are retained</td></tr>
    <tr><td><div id="setting-kv-allocator-lease-rebalance-threshold" class="anchored"><code>kv.<wbr />allocator.<wbr />lease\_rebalance\_threshold</code></div></td><td>float</td><td><code>0.05</code></td><td>minimum fraction away from the mean a store's lease count can be before it is considered for lease-transfers</td></tr>
    <tr><td><div id="setting-kv-allocator-load-based-lease-rebalancing-enabled" class="anchored"><code>kv.<wbr />allocator.<wbr />load\_based\_lease\_rebalancing.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to enable rebalancing of range leases based on load and latency</td></tr>
    <tr><td><div id="setting-kv-allocator-load-based-rebalancing" class="anchored"><code>kv.<wbr />allocator.<wbr />load\_based\_rebalancing</code></div></td><td>enumeration</td><td><code>leases and replicas</code></td><td>whether to rebalance based on the distribution of load across stores \[off = 0, leases = 1, leases and replicas = 2]</td></tr>
    <tr><td><div id="setting-kv-allocator-load-based-rebalancing-objective" class="anchored"><code>kv.<wbr />allocator.<wbr />load\_based\_rebalancing.<wbr />objective</code></div></td><td>enumeration</td><td><code>cpu</code></td><td>what objective does the cluster use to rebalance; if set to `qps` the cluster will attempt to balance qps among stores, if set to `cpu` the cluster will attempt to balance cpu usage among stores \[qps = 0, cpu = 1]</td></tr>
    <tr><td><div id="setting-kv-allocator-load-based-rebalancing-interval" class="anchored"><code>kv.<wbr />allocator.<wbr />load\_based\_rebalancing\_interval</code></div></td><td>duration</td><td><code>1m0s</code></td><td>the rough interval at which each store will check for load-based lease / replica rebalancing opportunities</td></tr>
    <tr><td><div id="setting-kv-allocator-qps-rebalance-threshold" class="anchored"><code>kv.<wbr />allocator.<wbr />qps\_rebalance\_threshold</code></div></td><td>float</td><td><code>0.1</code></td><td>minimum fraction away from the mean a store's QPS (such as queries per second) can be before it is considered overfull or underfull</td></tr>
    <tr><td><div id="setting-kv-allocator-range-rebalance-threshold" class="anchored"><code>kv.<wbr />allocator.<wbr />range\_rebalance\_threshold</code></div></td><td>float</td><td><code>0.05</code></td><td>minimum fraction away from the mean a store's range count can be before it is considered overfull or underfull</td></tr>
    <tr><td><div id="setting-kv-allocator-store-cpu-rebalance-threshold" class="anchored"><code>kv.<wbr />allocator.<wbr />store\_cpu\_rebalance\_threshold</code></div></td><td>float</td><td><code>0.1</code></td><td>minimum fraction away from the mean a store's cpu usage can be before it is considered overfull or underfull</td></tr>
    <tr><td><div id="setting-kv-bulk-io-write-max-rate" class="anchored"><code>kv.<wbr />bulk\_io\_write.<wbr />max\_rate</code></div></td><td>byte size</td><td><code>1.0 TiB</code></td><td>the rate limit (bytes/sec) to use for writes to disk on behalf of bulk io ops</td></tr>
    <tr><td><div id="setting-kv-bulk-sst-max-allowed-overage" class="anchored"><code>kv.<wbr />bulk\_sst.<wbr />max\_allowed\_overage</code></div></td><td>byte size</td><td><code>64 MiB</code></td><td>if positive, allowed size in excess of target size for SSTs from export requests; export requests (i.e. BACKUP) may buffer up to the sum of kv.bulk\_sst.target\_size and kv.bulk\_sst.max\_allowed\_overage in memory</td></tr>
    <tr><td><div id="setting-kv-bulk-sst-target-size" class="anchored"><code>kv.<wbr />bulk\_sst.<wbr />target\_size</code></div></td><td>byte size</td><td><code>16 MiB</code></td><td>target size for SSTs emitted from export requests; export requests (i.e. BACKUP) may buffer up to the sum of kv.bulk\_sst.target\_size and kv.bulk\_sst.max\_allowed\_overage in memory</td></tr>
    <tr><td><div id="setting-kv-closed-timestamp-follower-reads-enabled" class="anchored"><code>kv.<wbr />closed\_timestamp.<wbr />follower\_reads\_enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>allow (all) replicas to serve consistent historical reads based on closed timestamp information</td></tr>
    <tr><td><div id="setting-kv-log-range-and-node-events-enabled" class="anchored"><code>kv.<wbr />log\_range\_and\_node\_events.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to transactionally log range events (e.g., split, merge, add/remove voter/non-voter) into system.rangelogand node join and restart events into system.eventolog</td></tr>
    <tr><td><div id="setting-kv-protectedts-reconciliation-interval" class="anchored"><code>kv.<wbr />protectedts.<wbr />reconciliation.<wbr />interval</code></div></td><td>duration</td><td><code>5m0s</code></td><td>the frequency for reconciling jobs with protected timestamp records</td></tr>
    <tr><td><div id="setting-kv-range-split-by-load-enabled" class="anchored"><code>kv.<wbr />range\_split.<wbr />by\_load\_enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>allow automatic splits of ranges based on where load is concentrated</td></tr>
    <tr><td><div id="setting-kv-range-split-load-cpu-threshold" class="anchored"><code>kv.<wbr />range\_split.<wbr />load\_cpu\_threshold</code></div></td><td>duration</td><td><code>500ms</code></td><td>the CPU use per second over which, the range becomes a candidate for load based splitting</td></tr>
    <tr><td><div id="setting-kv-range-split-load-qps-threshold" class="anchored"><code>kv.<wbr />range\_split.<wbr />load\_qps\_threshold</code></div></td><td>integer</td><td><code>2500</code></td><td>the QPS over which, the range becomes a candidate for load based splitting</td></tr>
    <tr><td><div id="setting-kv-rangefeed-enabled" class="anchored"><code>kv.<wbr />rangefeed.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, rangefeed registration is enabled</td></tr>
    <tr><td><div id="setting-kv-rangefeed-range-stuck-threshold" class="anchored"><code>kv.<wbr />rangefeed.<wbr />range\_stuck\_threshold</code></div></td><td>duration</td><td><code>1m0s</code></td><td>restart rangefeeds if they don't emit anything for the specified threshold; 0 disables (kv.closed\_timestamp.side\_transport\_interval takes precedence)</td></tr>
    <tr><td><div id="setting-kv-replica-circuit-breaker-slow-replication-threshold" class="anchored"><code>kv.<wbr />replica\_circuit\_breaker.<wbr />slow\_replication\_threshold</code></div></td><td>duration</td><td><code>1m0s</code></td><td>duration after which slow proposals trip the per-Replica circuit breaker (zero duration disables breakers)</td></tr>
    <tr><td><div id="setting-kv-replica-stats-addsst-request-size-factor" class="anchored"><code>kv.<wbr />replica\_stats.<wbr />addsst\_request\_size\_factor</code></div></td><td>integer</td><td><code>50000</code></td><td>the divisor that is applied to addsstable request sizes, then recorded in a leaseholders QPS; 0 means all requests are treated as cost 1</td></tr>
    <tr><td><div id="setting-kv-replication-reports-interval" class="anchored"><code>kv.<wbr />replication\_reports.<wbr />interval</code></div></td><td>duration</td><td><code>1m0s</code></td><td>the frequency for generating the replication\_constraint\_stats, replication\_stats\_report and replication\_critical\_localities reports (set to 0 to disable)</td></tr>
    <tr><td><div id="setting-kv-snapshot-rebalance-max-rate" class="anchored"><code>kv.<wbr />snapshot\_rebalance.<wbr />max\_rate</code></div></td><td>byte size</td><td><code>32 MiB</code></td><td>the rate limit (bytes/sec) to use for rebalance and upreplication snapshots</td></tr>
    <tr><td><div id="setting-kv-snapshot-recovery-max-rate" class="anchored"><code>kv.<wbr />snapshot\_recovery.<wbr />max\_rate</code></div></td><td>byte size</td><td><code>32 MiB</code></td><td>the rate limit (bytes/sec) to use for recovery snapshots</td></tr>
    <tr><td><div id="setting-kv-transaction-max-intents-bytes" class="anchored"><code>kv.<wbr />transaction.<wbr />max\_intents\_bytes</code></div></td><td>integer</td><td><code>4194304</code></td><td>maximum number of bytes used to track locks in transactions</td></tr>
    <tr><td><div id="setting-kv-transaction-max-refresh-spans-bytes" class="anchored"><code>kv.<wbr />transaction.<wbr />max\_refresh\_spans\_bytes</code></div></td><td>integer</td><td><code>4194304</code></td><td>maximum number of bytes used to track refresh spans in serializable transactions</td></tr>
    <tr><td><div id="setting-kv-transaction-reject-over-max-intents-budget-enabled" class="anchored"><code>kv.<wbr />transaction.<wbr />reject\_over\_max\_intents\_budget.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, transactions that exceed their lock tracking budget (kv.transaction.max\_intents\_bytes) are rejected instead of having their lock spans imprecisely compressed</td></tr>
    <tr><td><div id="setting-kvadmission-store-provisioned-bandwidth" class="anchored"><code>kvadmission.<wbr />store.<wbr />provisioned\_bandwidth</code></div></td><td>byte size</td><td><code>0 B</code></td><td>if set to a non-zero value, this is used as the provisioned bandwidth (in bytes/s), for each store. It can be over-ridden on a per-store basis using the --store flag</td></tr>
    <tr><td><div id="setting-schedules-backup-gc-protection-enabled" class="anchored"><code>schedules.<wbr />backup.<wbr />gc\_protection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enable chaining of GC protection across backups run as part of a schedule</td></tr>
    <tr><td><div id="setting-security-ocsp-mode" class="anchored"><code>security.<wbr />ocsp.<wbr />mode</code></div></td><td>enumeration</td><td><code>off</code></td><td>use OCSP to check whether TLS certificates are revoked. If the OCSP server is unreachable, in strict mode all certificates will be rejected and in lax mode all certificates will be accepted. \[off = 0, lax = 1, strict = 2]</td></tr>
    <tr><td><div id="setting-security-ocsp-timeout" class="anchored"><code>security.<wbr />ocsp.<wbr />timeout</code></div></td><td>duration</td><td><code>3s</code></td><td>timeout before considering the OCSP server unreachable</td></tr>
    <tr><td><div id="setting-server-auth-log-sql-connections-enabled" class="anchored"><code>server.<wbr />auth\_log.<wbr />sql\_connections.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, log SQL client connect and disconnect events to the SESSIONS log channel (note: may hinder performance on loaded nodes)</td></tr>
    <tr><td><div id="setting-server-auth-log-sql-sessions-enabled" class="anchored"><code>server.<wbr />auth\_log.<wbr />sql\_sessions.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, log verbose SQL session authentication events to the SESSIONS log channel (note: may hinder performance on loaded nodes). Session start and end events are always logged regardless of this setting; disable the SESSIONS log channel to suppress them.</td></tr>
    <tr><td><div id="setting-server-authentication-cache-enabled" class="anchored"><code>server.<wbr />authentication\_cache.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enables a cache used during authentication to avoid lookups to system tables when retrieving per-user authentication-related information</td></tr>
    <tr><td><div id="setting-server-child-metrics-enabled" class="anchored"><code>server.<wbr />child\_metrics.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>enables the exporting of child metrics, additional prometheus time series with extra labels</td></tr>
    <tr><td><div id="setting-server-client-cert-expiration-cache-capacity" class="anchored"><code>server.<wbr />client\_cert\_expiration\_cache.<wbr />capacity</code></div></td><td>integer</td><td><code>1000</code></td><td>the maximum number of client cert expirations stored</td></tr>
    <tr><td><div id="setting-server-clock-forward-jump-check-enabled" class="anchored"><code>server.<wbr />clock.<wbr />forward\_jump\_check\_enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if enabled, forward clock jumps > max\_offset/2 will cause a panic</td></tr>
    <tr><td><div id="setting-server-clock-persist-upper-bound-interval" class="anchored"><code>server.<wbr />clock.<wbr />persist\_upper\_bound\_interval</code></div></td><td>duration</td><td><code>0s</code></td><td>the interval between persisting the wall time upper bound of the clock. The clock does not generate a wall time greater than the persisted timestamp and will panic if it sees a wall time greater than this value. When cockroach starts, it waits for the wall time to catch-up till this persisted timestamp. This guarantees monotonic wall time across server restarts. Not setting this or setting a value of 0 disables this feature.</td></tr>
    <tr><td><div id="setting-server-consistency-check-max-rate" class="anchored"><code>server.<wbr />consistency\_check.<wbr />max\_rate</code></div></td><td>byte size</td><td><code>8.0 MiB</code></td><td>the rate limit (bytes/sec) to use for consistency checks; used in conjunction with server.consistency\_check.interval to control the frequency of consistency checks. Note that setting this too high can negatively impact performance.</td></tr>
    <tr><td><div id="setting-server-controller-default-tenant" class="anchored"><code>server.<wbr />controller.<wbr />default\_tenant</code></div></td><td>string</td><td><code>system</code></td><td>name of the tenant to use to serve requests when clients don't specify a tenant</td></tr>
    <tr><td><div id="setting-server-eventlog-enabled" class="anchored"><code>server.<wbr />eventlog.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if set, logged notable events are also stored in the table system.eventlog</td></tr>
    <tr><td><div id="setting-server-eventlog-ttl" class="anchored"><code>server.<wbr />eventlog.<wbr />ttl</code></div></td><td>duration</td><td><code>2160h0m0s</code></td><td>if nonzero, entries in system.eventlog older than this duration are periodically purged</td></tr>
    <tr><td><div id="setting-server-host-based-authentication-configuration" class="anchored"><code>server.<wbr />host\_based\_authentication.<wbr />configuration</code></div></td><td>string</td><td><code /></td><td>host-based authentication configuration to use during connection authentication</td></tr>
    <tr><td><div id="setting-server-hot-ranges-request-node-timeout" class="anchored"><code>server.<wbr />hot\_ranges\_request.<wbr />node.<wbr />timeout</code></div></td><td>duration</td><td><code>5m0s</code></td><td>the duration allowed for a single node to return hot range data before the request is cancelled; if set to 0, there is no timeout</td></tr>
    <tr><td><div id="setting-server-hsts-enabled" class="anchored"><code>server.<wbr />hsts.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, HSTS headers will be sent along with all HTTP requests. The headers will contain a max-age setting of one year. Browsers honoring the header will always use HTTPS to access the DB Console. Ensure that TLS is correctly configured prior to enabling.</td></tr>
    <tr><td><div id="setting-server-http-base-path" class="anchored"><code>server.<wbr />http.<wbr />base\_path</code></div></td><td>string</td><td><code>/</code></td><td>path to redirect the user to upon succcessful login</td></tr>
    <tr><td><div id="setting-server-identity-map-configuration" class="anchored"><code>server.<wbr />identity\_map.<wbr />configuration</code></div></td><td>string</td><td><code /></td><td>system-identity to database-username mappings</td></tr>
    <tr><td><div id="setting-server-log-gc-max-deletions-per-cycle" class="anchored"><code>server.<wbr />log\_gc.<wbr />max\_deletions\_per\_cycle</code></div></td><td>integer</td><td><code>1000</code></td><td>the maximum number of entries to delete on each purge of log-like system tables</td></tr>
    <tr><td><div id="setting-server-log-gc-period" class="anchored"><code>server.<wbr />log\_gc.<wbr />period</code></div></td><td>duration</td><td><code>1h0m0s</code></td><td>the period at which log-like system tables are checked for old entries</td></tr>
    <tr><td><div id="setting-server-max-connections-per-gateway" class="anchored"><code>server.<wbr />max\_connections\_per\_gateway</code></div></td><td>integer</td><td><code>-1</code></td><td>the maximum number of non-superuser SQL connections per gateway allowed at a given time (note: this will only limit future connection attempts and will not affect already established connections). Negative values result in unlimited number of connections. Superusers are not affected by this limit.</td></tr>
    <tr><td><div id="setting-server-max-open-transactions-per-gateway" class="anchored"><code>server.<wbr />max\_open\_transactions\_per\_gateway</code></div></td><td>integer</td><td><code>-1</code></td><td>the maximum number of open SQL transactions per gateway allowed at a given time. Negative values result in unlimited number of connections. Superusers are not affected by this limit.</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-autologin" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />autologin</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, logged-out visitors to the DB Console will be automatically redirected to the OIDC login endpoint</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-button-text" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />button\_text</code></div></td><td>string</td><td><code>Log in with your OIDC provider</code></td><td>text to show on button on DB Console login page to login with your OIDC provider (only shown if OIDC is enabled)</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-claim-json-key" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />claim\_json\_key</code></div></td><td>string</td><td><code /></td><td>sets JSON key of principal to extract from payload after OIDC authentication completes (usually email or sid)</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-client-id" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />client\_id</code></div></td><td>string</td><td><code /></td><td>sets OIDC client id</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-client-secret" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />client\_secret</code></div></td><td>string</td><td><code /></td><td>sets OIDC client secret</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-enabled" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>enables or disabled OIDC login for the DB Console</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-principal-regex" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />principal\_regex</code></div></td><td>string</td><td><code>(.+)</code></td><td>regular expression to apply to extracted principal (see claim\_json\_key setting) to translate to SQL user (golang regex format, must include 1 grouping to extract)</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-provider-url" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />provider\_url</code></div></td><td>string</td><td><code /></td><td>sets OIDC provider URL (\{provider\_url}/.well-known/openid-configuration must resolve)</td></tr>
    <tr><td><div id="setting-server-oidc-authentication-redirect-url" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />redirect\_url</code></div></td><td>string</td><td><code>[https://localhost:8080/oidc/v1/callback](https://localhost:8080/oidc/v1/callback)</code></td><td>sets OIDC redirect URL via a URL string or a JSON string containing a required `redirect_urls` key with an object that maps from region keys to URL strings (URLs should point to your load balancer and must route to the path /oidc/v1/callback) </td></tr>
    <tr><td><div id="setting-server-oidc-authentication-scopes" class="anchored"><code>server.<wbr />oidc\_authentication.<wbr />scopes</code></div></td><td>string</td><td><code>openid</code></td><td>sets OIDC scopes to include with authentication request (space delimited list of strings, required to start with `openid`)</td></tr>
    <tr><td><div id="setting-server-rangelog-ttl" class="anchored"><code>server.<wbr />rangelog.<wbr />ttl</code></div></td><td>duration</td><td><code>720h0m0s</code></td><td>if nonzero, entries in system.rangelog older than this duration are periodically purged</td></tr>
    <tr><td><div id="setting-server-secondary-tenants-redact-trace-enabled" class="anchored"><code>server.<wbr />secondary\_tenants.<wbr />redact\_trace.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>controls if server side traces are redacted for tenant operations</td></tr>
    <tr><td><div id="setting-server-shutdown-connection-wait" class="anchored"><code>server.<wbr />shutdown.<wbr />connection\_wait</code></div></td><td>duration</td><td><code>0s</code></td><td>the maximum amount of time a server waits for all SQL connections to be closed before proceeding with a drain. (note that the --drain-wait parameter for cockroach node drain may need adjustment after changing this setting)</td></tr>
    <tr><td><div id="setting-server-shutdown-drain-wait" class="anchored"><code>server.<wbr />shutdown.<wbr />drain\_wait</code></div></td><td>duration</td><td><code>0s</code></td><td>the amount of time a server waits in an unready state before proceeding with a drain (note that the --drain-wait parameter for cockroach node drain may need adjustment after changing this setting. --drain-wait is to specify the duration of the whole draining process, while server.shutdown.drain\_wait is to set the wait time for health probes to notice that the node is not ready.)</td></tr>
    <tr><td><div id="setting-server-shutdown-lease-transfer-wait" class="anchored"><code>server.<wbr />shutdown.<wbr />lease\_transfer\_wait</code></div></td><td>duration</td><td><code>5s</code></td><td>the timeout for a single iteration of the range lease transfer phase of draining (note that the --drain-wait parameter for cockroach node drain may need adjustment after changing this setting)</td></tr>
    <tr><td><div id="setting-server-shutdown-query-wait" class="anchored"><code>server.<wbr />shutdown.<wbr />query\_wait</code></div></td><td>duration</td><td><code>10s</code></td><td>the timeout for waiting for active queries to finish during a drain (note that the --drain-wait parameter for cockroach node drain may need adjustment after changing this setting)</td></tr>
    <tr><td><div id="setting-server-time-until-store-dead" class="anchored"><code>server.<wbr />time\_until\_store\_dead</code></div></td><td>duration</td><td><code>5m0s</code></td><td>the time after which if there is no new gossiped information about a store, it is considered dead</td></tr>
    <tr><td><div id="setting-server-user-login-cert-password-method-auto-scram-promotion-enabled" class="anchored"><code>server.<wbr />user\_login.<wbr />cert\_password\_method.<wbr />auto\_scram\_promotion.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>whether to automatically promote cert-password authentication to use SCRAM</td></tr>
    <tr><td><div id="setting-server-user-login-downgrade-scram-stored-passwords-to-bcrypt-enabled" class="anchored"><code>server.<wbr />user\_login.<wbr />downgrade\_scram\_stored\_passwords\_to\_bcrypt.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if server.user\_login.password\_encryption=crdb-bcrypt, this controls whether to automatically re-encode stored passwords using scram-sha-256 to crdb-bcrypt</td></tr>
    <tr><td><div id="setting-server-user-login-min-password-length" class="anchored"><code>server.<wbr />user\_login.<wbr />min\_password\_length</code></div></td><td>integer</td><td><code>1</code></td><td>the minimum length accepted for passwords set in cleartext via SQL. Note that a value lower than 1 is ignored: passwords cannot be empty in any case.</td></tr>
    <tr><td><div id="setting-server-user-login-password-encryption" class="anchored"><code>server.<wbr />user\_login.<wbr />password\_encryption</code></div></td><td>enumeration</td><td><code>scram-sha-256</code></td><td>which hash method to use to encode cleartext passwords passed via ALTER/CREATE USER/ROLE WITH PASSWORD \[crdb-bcrypt = 2, scram-sha-256 = 3]</td></tr>
    <tr><td><div id="setting-server-user-login-password-hashes-default-cost-crdb-bcrypt" class="anchored"><code>server.<wbr />user\_login.<wbr />password\_hashes.<wbr />default\_cost.<wbr />crdb\_bcrypt</code></div></td><td>integer</td><td><code>10</code></td><td>the hashing cost to use when storing passwords supplied as cleartext by SQL clients with the hashing method crdb-bcrypt (allowed range: 4-31)</td></tr>
    <tr><td><div id="setting-server-user-login-password-hashes-default-cost-scram-sha-256" class="anchored"><code>server.<wbr />user\_login.<wbr />password\_hashes.<wbr />default\_cost.<wbr />scram\_sha\_256</code></div></td><td>integer</td><td><code>10610</code></td><td>the hashing cost to use when storing passwords supplied as cleartext by SQL clients with the hashing method scram-sha-256 (allowed range: 4096-240000000000)</td></tr>
    <tr><td><div id="setting-server-user-login-rehash-scram-stored-passwords-on-cost-change-enabled" class="anchored"><code>server.<wbr />user\_login.<wbr />rehash\_scram\_stored\_passwords\_on\_cost\_change.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if server.user\_login.password\_hashes.default\_cost.scram\_sha\_256 differs from, the cost in a stored hash, this controls whether to automatically re-encode stored passwords using scram-sha-256 with the new default cost</td></tr>
    <tr><td><div id="setting-server-user-login-timeout" class="anchored"><code>server.<wbr />user\_login.<wbr />timeout</code></div></td><td>duration</td><td><code>10s</code></td><td>timeout after which client authentication times out if some system range is unavailable (0 = no timeout)</td></tr>
    <tr><td><div id="setting-server-user-login-upgrade-bcrypt-stored-passwords-to-scram-enabled" class="anchored"><code>server.<wbr />user\_login.<wbr />upgrade\_bcrypt\_stored\_passwords\_to\_scram.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if server.user\_login.password\_encryption=scram-sha-256, this controls whether to automatically re-encode stored passwords using crdb-bcrypt to scram-sha-256</td></tr>
    <tr><td><div id="setting-server-web-session-purge-ttl" class="anchored"><code>server.<wbr />web\_session.<wbr />purge.<wbr />ttl</code></div></td><td>duration</td><td><code>1h0m0s</code></td><td>if nonzero, entries in system.web\_sessions older than this duration are periodically purged</td></tr>
    <tr><td><div id="setting-server-web-session-timeout" class="anchored"><code>server.<wbr />web\_session\_timeout</code></div></td><td>duration</td><td><code>168h0m0s</code></td><td>the duration that a newly created web session will be valid</td></tr>
    <tr><td><div id="setting-sql-auth-change-own-password-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />change\_own\_password.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>controls whether a user is allowed to change their own password, even if they have no other privileges</td></tr>
    <tr><td><div id="setting-sql-auth-createrole-allows-grant-role-membership-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />createrole\_allows\_grant\_role\_membership.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, users with CREATEROLE privilege can grant/revoke membership in roles</td></tr>
    <tr><td><div id="setting-sql-auth-grant-option-for-owner-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />grant\_option\_for\_owner.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>determines whether the GRANT OPTION for privileges is implicitly given to the owner of an object</td></tr>
    <tr><td><div id="setting-sql-auth-grant-option-inheritance-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />grant\_option\_inheritance.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>determines whether the GRANT OPTION for privileges is inherited through role membership</td></tr>
    <tr><td><div id="setting-sql-auth-modify-cluster-setting-applies-to-all-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />modify\_cluster\_setting\_applies\_to\_all.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>a bool which indicates whether MODIFYCLUSTERSETTING is able to set all cluster settings or only settings with the sql.defaults prefix (deprecated)</td></tr>
    <tr><td><div id="setting-sql-auth-resolve-membership-single-scan-enabled" class="anchored"><code>sql.<wbr />auth.<wbr />resolve\_membership\_single\_scan.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>determines whether to populate the role membership cache with a single scan</td></tr>
    <tr><td><div id="setting-sql-closed-session-cache-capacity" class="anchored"><code>sql.<wbr />closed\_session\_cache.<wbr />capacity</code></div></td><td>integer</td><td><code>1000</code></td><td>the maximum number of sessions in the cache</td></tr>
    <tr><td><div id="setting-sql-closed-session-cache-time-to-live" class="anchored"><code>sql.<wbr />closed\_session\_cache.<wbr />time\_to\_live</code></div></td><td>integer</td><td><code>3600</code></td><td>the maximum time to live, in seconds</td></tr>
    <tr><td><div id="setting-sql-contention-event-store-capacity" class="anchored"><code>sql.<wbr />contention.<wbr />event\_store.<wbr />capacity</code></div></td><td>byte size</td><td><code>64 MiB</code></td><td>the in-memory storage capacity per-node of contention event store</td></tr>
    <tr><td><div id="setting-sql-contention-event-store-duration-threshold" class="anchored"><code>sql.<wbr />contention.<wbr />event\_store.<wbr />duration\_threshold</code></div></td><td>duration</td><td><code>0s</code></td><td>minimum contention duration to cause the contention events to be collected into crdb\_internal.transaction\_contention\_events</td></tr>
    <tr><td><div id="setting-sql-contention-txn-id-cache-max-size" class="anchored"><code>sql.<wbr />contention.<wbr />txn\_id\_cache.<wbr />max\_size</code></div></td><td>byte size</td><td><code>64 MiB</code></td><td>the maximum byte size TxnID cache will use (set to 0 to disable)</td></tr>
    <tr><td><div id="setting-sql-cross-db-fks-enabled" class="anchored"><code>sql.<wbr />cross\_db\_fks.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, creating foreign key references across databases is allowed</td></tr>
    <tr><td><div id="setting-sql-cross-db-sequence-owners-enabled" class="anchored"><code>sql.<wbr />cross\_db\_sequence\_owners.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, creating sequences owned by tables from other databases is allowed</td></tr>
    <tr><td><div id="setting-sql-cross-db-sequence-references-enabled" class="anchored"><code>sql.<wbr />cross\_db\_sequence\_references.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, sequences referenced by tables from other databases are allowed</td></tr>
    <tr><td><div id="setting-sql-cross-db-views-enabled" class="anchored"><code>sql.<wbr />cross\_db\_views.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, creating views that refer to other databases is allowed</td></tr>
    <tr><td><div id="setting-sql-defaults-cost-scans-with-default-col-size-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />cost\_scans\_with\_default\_col\_size.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>setting to true uses the same size for all columns to compute scan cost<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-datestyle" class="anchored"><code>sql.<wbr />defaults.<wbr />datestyle</code></div></td><td>enumeration</td><td><code>iso, mdy</code></td><td>default value for DateStyle session setting \[iso, mdy = 0, iso, dmy = 1, iso, ymd = 2]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-default-hash-sharded-index-bucket-count" class="anchored"><code>sql.<wbr />defaults.<wbr />default\_hash\_sharded\_index\_bucket\_count</code></div></td><td>integer</td><td><code>16</code></td><td>used as bucket count if bucket count is not specified in hash sharded index definition<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-default-int-size" class="anchored"><code>sql.<wbr />defaults.<wbr />default\_int\_size</code></div></td><td>integer</td><td><code>8</code></td><td>the size, in bytes, of an INT type<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-disallow-full-table-scans-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />disallow\_full\_table\_scans.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>setting to true rejects queries that have planned a full table scan<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-distsql" class="anchored"><code>sql.<wbr />defaults.<wbr />distsql</code></div></td><td>enumeration</td><td><code>auto</code></td><td>default distributed SQL execution mode \[off = 0, auto = 1, on = 2, always = 3]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-experimental-alter-column-type-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />experimental\_alter\_column\_type.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for experimental\_alter\_column\_type session setting; enables the use of ALTER COLUMN TYPE for general conversions<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-experimental-distsql-planning" class="anchored"><code>sql.<wbr />defaults.<wbr />experimental\_distsql\_planning</code></div></td><td>enumeration</td><td><code>off</code></td><td>default experimental\_distsql\_planning mode; enables experimental opt-driven DistSQL planning \[off = 0, on = 1]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-experimental-enable-unique-without-index-constraints-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />experimental\_enable\_unique\_without\_index\_constraints.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for experimental\_enable\_unique\_without\_index\_constraints session setting;disables unique without index constraints by default<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-experimental-implicit-column-partitioning-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />experimental\_implicit\_column\_partitioning.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for experimental\_enable\_temp\_tables; allows for the use of implicit column partitioning<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-experimental-temporary-tables-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />experimental\_temporary\_tables.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for experimental\_enable\_temp\_tables; allows for use of temporary tables by default<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-foreign-key-cascades-limit" class="anchored"><code>sql.<wbr />defaults.<wbr />foreign\_key\_cascades\_limit</code></div></td><td>integer</td><td><code>10000</code></td><td>default value for foreign\_key\_cascades\_limit session setting; limits the number of cascading operations that run as part of a single query<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-idle-in-session-timeout" class="anchored"><code>sql.<wbr />defaults.<wbr />idle\_in\_session\_timeout</code></div></td><td>duration</td><td><code>0s</code></td><td>default value for the idle\_in\_session\_timeout; default value for the idle\_in\_session\_timeout session setting; controls the duration a session is permitted to idle before the session is terminated; if set to 0, there is no timeout<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-idle-in-transaction-session-timeout" class="anchored"><code>sql.<wbr />defaults.<wbr />idle\_in\_transaction\_session\_timeout</code></div></td><td>duration</td><td><code>0s</code></td><td>default value for the idle\_in\_transaction\_session\_timeout; controls the duration a session is permitted to idle in a transaction before the session is terminated; if set to 0, there is no timeout<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-implicit-select-for-update-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />implicit\_select\_for\_update.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for enable\_implicit\_select\_for\_update session setting; enables FOR UPDATE locking during the row-fetch phase of mutation statements<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-insert-fast-path-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />insert\_fast\_path.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for enable\_insert\_fast\_path session setting; enables a specialized insert path<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-intervalstyle" class="anchored"><code>sql.<wbr />defaults.<wbr />intervalstyle</code></div></td><td>enumeration</td><td><code>postgres</code></td><td>default value for IntervalStyle session setting \[postgres = 0, iso\_8601 = 1, sql\_standard = 2]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-large-full-scan-rows" class="anchored"><code>sql.<wbr />defaults.<wbr />large\_full\_scan\_rows</code></div></td><td>float</td><td><code>1000</code></td><td>default value for large\_full\_scan\_rows session setting which determines the maximum table size allowed for a full scan when disallow\_full\_table\_scans is set to true<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-locality-optimized-partitioned-index-scan-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />locality\_optimized\_partitioned\_index\_scan.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for locality\_optimized\_partitioned\_index\_scan session setting; enables searching for rows in the current region before searching remote regions<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-lock-timeout" class="anchored"><code>sql.<wbr />defaults.<wbr />lock\_timeout</code></div></td><td>duration</td><td><code>0s</code></td><td>default value for the lock\_timeout; default value for the lock\_timeout session setting; controls the duration a query is permitted to wait while attempting to acquire a lock on a key or while blocking on an existing lock in order to perform a non-locking read on a key; if set to 0, there is no timeout<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-on-update-rehome-row-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />on\_update\_rehome\_row.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for on\_update\_rehome\_row; enables ON UPDATE rehome\_row() expressions to trigger on updates<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-optimizer-use-histograms-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />optimizer\_use\_histograms.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for optimizer\_use\_histograms session setting; enables usage of histograms in the optimizer by default<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-optimizer-use-multicol-stats-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />optimizer\_use\_multicol\_stats.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for optimizer\_use\_multicol\_stats session setting; enables usage of multi-column stats in the optimizer by default<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-override-alter-primary-region-in-super-region-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />override\_alter\_primary\_region\_in\_super\_region.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for override\_alter\_primary\_region\_in\_super\_region; allows for altering the primary region even if the primary region is a member of a super region<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-override-multi-region-zone-config-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />override\_multi\_region\_zone\_config.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for override\_multi\_region\_zone\_config; allows for overriding the zone configs of a multi-region table or database<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-prefer-lookup-joins-for-fks-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />prefer\_lookup\_joins\_for\_fks.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for prefer\_lookup\_joins\_for\_fks session setting; causes foreign key operations to use lookup joins when possible<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-primary-region" class="anchored"><code>sql.<wbr />defaults.<wbr />primary\_region</code></div></td><td>string</td><td><code /></td><td>if not empty, all databases created without a PRIMARY REGION will implicitly have the given PRIMARY REGION<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-reorder-joins-limit" class="anchored"><code>sql.<wbr />defaults.<wbr />reorder\_joins\_limit</code></div></td><td>integer</td><td><code>8</code></td><td>default number of joins to reorder<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-require-explicit-primary-keys-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />require\_explicit\_primary\_keys.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for requiring explicit primary keys in CREATE TABLE statements<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-results-buffer-size" class="anchored"><code>sql.<wbr />defaults.<wbr />results\_buffer.<wbr />size</code></div></td><td>byte size</td><td><code>16 KiB</code></td><td>default size of the buffer that accumulates results for a statement or a batch of statements before they are sent to the client. This can be overridden on an individual connection with the 'results\_buffer\_size' parameter. Note that auto-retries generally only happen while no results have been delivered to the client, so reducing this size can increase the number of retriable errors a client receives. On the other hand, increasing the buffer size can increase the delay until the client receives the first result row. Updating the setting only affects new connections. Setting to 0 disables any buffering.<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-serial-normalization" class="anchored"><code>sql.<wbr />defaults.<wbr />serial\_normalization</code></div></td><td>enumeration</td><td><code>rowid</code></td><td>default handling of SERIAL in table definitions \[rowid = 0, virtual\_sequence = 1, sql\_sequence = 2, sql\_sequence\_cached = 3, unordered\_rowid = 4]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-statement-timeout" class="anchored"><code>sql.<wbr />defaults.<wbr />statement\_timeout</code></div></td><td>duration</td><td><code>0s</code></td><td>default value for the statement\_timeout; default value for the statement\_timeout session setting; controls the duration a query is permitted to run before it is canceled; if set to 0, there is no timeout<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-stub-catalog-tables-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />stub\_catalog\_tables.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for stub\_catalog\_tables session setting<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-super-regions-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />super\_regions.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>default value for enable\_super\_regions; allows for the usage of super regions<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-transaction-rows-read-err" class="anchored"><code>sql.<wbr />defaults.<wbr />transaction\_rows\_read\_err</code></div></td><td>integer</td><td><code>0</code></td><td>the limit for the number of rows read by a SQL transaction which - once exceeded - will fail the transaction (or will trigger a logging event to SQL\_INTERNAL\_PERF for internal transactions); use 0 to disable<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-transaction-rows-read-log" class="anchored"><code>sql.<wbr />defaults.<wbr />transaction\_rows\_read\_log</code></div></td><td>integer</td><td><code>0</code></td><td>the threshold for the number of rows read by a SQL transaction which - once exceeded - will trigger a logging event to SQL\_PERF (or SQL\_INTERNAL\_PERF for internal transactions); use 0 to disable<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-transaction-rows-written-err" class="anchored"><code>sql.<wbr />defaults.<wbr />transaction\_rows\_written\_err</code></div></td><td>integer</td><td><code>0</code></td><td>the limit for the number of rows written by a SQL transaction which - once exceeded - will fail the transaction (or will trigger a logging event to SQL\_INTERNAL\_PERF for internal transactions); use 0 to disable<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-transaction-rows-written-log" class="anchored"><code>sql.<wbr />defaults.<wbr />transaction\_rows\_written\_log</code></div></td><td>integer</td><td><code>0</code></td><td>the threshold for the number of rows written by a SQL transaction which - once exceeded - will trigger a logging event to SQL\_PERF (or SQL\_INTERNAL\_PERF for internal transactions); use 0 to disable<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-use-declarative-schema-changer" class="anchored"><code>sql.<wbr />defaults.<wbr />use\_declarative\_schema\_changer</code></div></td><td>enumeration</td><td><code>on</code></td><td>default value for use\_declarative\_schema\_changer session setting;disables new schema changer by default \[off = 0, on = 1, unsafe = 2, unsafe\_always = 3]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-vectorize" class="anchored"><code>sql.<wbr />defaults.<wbr />vectorize</code></div></td><td>enumeration</td><td><code>on</code></td><td>default vectorize mode \[on = 0, on = 2, experimental\_always = 3, off = 4]<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-defaults-zigzag-join-enabled" class="anchored"><code>sql.<wbr />defaults.<wbr />zigzag\_join.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>default value for enable\_zigzag\_join session setting; allows use of zig-zag join by default<br />This cluster setting is being kept to preserve backwards-compatibility.<br />This session variable default should now be configured using <a href="alter-role"><code>ALTER ROLE... SET</code></a></td></tr>
    <tr><td><div id="setting-sql-distsql-temp-storage-workmem" class="anchored"><code>sql.<wbr />distsql.<wbr />temp\_storage.<wbr />workmem</code></div></td><td>byte size</td><td><code>64 MiB</code></td><td>maximum amount of memory in bytes a processor can use before falling back to temp storage</td></tr>
    <tr><td><div id="setting-sql-guardrails-max-row-size-err" class="anchored"><code>sql.<wbr />guardrails.<wbr />max\_row\_size\_err</code></div></td><td>byte size</td><td><code>512 MiB</code></td><td>maximum size of row (or column family if multiple column families are in use) that SQL can write to the database, above which an error is returned; use 0 to disable</td></tr>
    <tr><td><div id="setting-sql-guardrails-max-row-size-log" class="anchored"><code>sql.<wbr />guardrails.<wbr />max\_row\_size\_log</code></div></td><td>byte size</td><td><code>64 MiB</code></td><td>maximum size of row (or column family if multiple column families are in use) that SQL can write to the database, above which an event is logged to SQL\_PERF (or SQL\_INTERNAL\_PERF if the mutating statement was internal); use 0 to disable</td></tr>
    <tr><td><div id="setting-sql-hash-sharded-range-pre-split-max" class="anchored"><code>sql.<wbr />hash\_sharded\_range\_pre\_split.<wbr />max</code></div></td><td>integer</td><td><code>16</code></td><td>max pre-split ranges to have when adding hash sharded index to an existing table</td></tr>
    <tr><td><div id="setting-sql-insights-anomaly-detection-enabled" class="anchored"><code>sql.<wbr />insights.<wbr />anomaly\_detection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enable per-fingerprint latency recording and anomaly detection</td></tr>
    <tr><td><div id="setting-sql-insights-anomaly-detection-latency-threshold" class="anchored"><code>sql.<wbr />insights.<wbr />anomaly\_detection.<wbr />latency\_threshold</code></div></td><td>duration</td><td><code>50ms</code></td><td>statements must surpass this threshold to trigger anomaly detection and identification</td></tr>
    <tr><td><div id="setting-sql-insights-anomaly-detection-memory-limit" class="anchored"><code>sql.<wbr />insights.<wbr />anomaly\_detection.<wbr />memory\_limit</code></div></td><td>byte size</td><td><code>1.0 MiB</code></td><td>the maximum amount of memory allowed for tracking statement latencies</td></tr>
    <tr><td><div id="setting-sql-insights-execution-insights-capacity" class="anchored"><code>sql.<wbr />insights.<wbr />execution\_insights\_capacity</code></div></td><td>integer</td><td><code>1000</code></td><td>the size of the per-node store of execution insights</td></tr>
    <tr><td><div id="setting-sql-insights-high-retry-count-threshold" class="anchored"><code>sql.<wbr />insights.<wbr />high\_retry\_count.<wbr />threshold</code></div></td><td>integer</td><td><code>10</code></td><td>the number of retries a slow statement must have undergone for its high retry count to be highlighted as a potential problem</td></tr>
    <tr><td><div id="setting-sql-insights-latency-threshold" class="anchored"><code>sql.<wbr />insights.<wbr />latency\_threshold</code></div></td><td>duration</td><td><code>100ms</code></td><td>amount of time after which an executing statement is considered slow. Use 0 to disable.</td></tr>
    <tr><td><div id="setting-sql-log-slow-query-experimental-full-table-scans-enabled" class="anchored"><code>sql.<wbr />log.<wbr />slow\_query.<wbr />experimental\_full\_table\_scans.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when set to true, statements that perform a full table/index scan will be logged to the slow query log even if they do not meet the latency threshold. Must have the slow query log enabled for this setting to have any effect.</td></tr>
    <tr><td><div id="setting-sql-log-slow-query-internal-queries-enabled" class="anchored"><code>sql.<wbr />log.<wbr />slow\_query.<wbr />internal\_queries.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when set to true, internal queries which exceed the slow query log threshold are logged to a separate log. Must have the slow query log enabled for this setting to have any effect.</td></tr>
    <tr><td><div id="setting-sql-log-slow-query-latency-threshold" class="anchored"><code>sql.<wbr />log.<wbr />slow\_query.<wbr />latency\_threshold</code></div></td><td>duration</td><td><code>0s</code></td><td>when set to non-zero, log statements whose service latency exceeds the threshold to a secondary logger on each node</td></tr>
    <tr><td><div id="setting-sql-log-user-audit" class="anchored"><code>sql.<wbr />log.<wbr />user\_audit</code></div></td><td>string</td><td><code /></td><td>user/role-based audit logging configuration. An enterprise license is required for this cluster setting to take effect.</td></tr>
    <tr><td><div id="setting-sql-log-user-audit-reduced-config-enabled" class="anchored"><code>sql.<wbr />log.<wbr />user\_audit.<wbr />reduced\_config.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>enables logic to compute a reduced audit configuration, computing the audit configuration only once at session start instead of at each SQL event. The tradeoff with the increase in performance (\~5%), is that changes to the audit configuration (user role memberships/cluster setting) are not reflected within session. Users will need to start a new session to see these changes in their auditing behaviour.</td></tr>
    <tr><td><div id="setting-sql-metrics-index-usage-stats-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />index\_usage\_stats.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>collect per index usage statistics</td></tr>
    <tr><td><div id="setting-sql-metrics-max-mem-reported-stmt-fingerprints" class="anchored"><code>sql.<wbr />metrics.<wbr />max\_mem\_reported\_stmt\_fingerprints</code></div></td><td>integer</td><td><code>100000</code></td><td>the maximum number of reported statement fingerprints stored in memory</td></tr>
    <tr><td><div id="setting-sql-metrics-max-mem-reported-txn-fingerprints" class="anchored"><code>sql.<wbr />metrics.<wbr />max\_mem\_reported\_txn\_fingerprints</code></div></td><td>integer</td><td><code>100000</code></td><td>the maximum number of reported transaction fingerprints stored in memory</td></tr>
    <tr><td><div id="setting-sql-metrics-max-mem-stmt-fingerprints" class="anchored"><code>sql.<wbr />metrics.<wbr />max\_mem\_stmt\_fingerprints</code></div></td><td>integer</td><td><code>100000</code></td><td>the maximum number of statement fingerprints stored in memory</td></tr>
    <tr><td><div id="setting-sql-metrics-max-mem-txn-fingerprints" class="anchored"><code>sql.<wbr />metrics.<wbr />max\_mem\_txn\_fingerprints</code></div></td><td>integer</td><td><code>100000</code></td><td>the maximum number of transaction fingerprints stored in memory</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-dump-to-logs" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />dump\_to\_logs</code></div></td><td>boolean</td><td><code>false</code></td><td>dump collected statement statistics to node logs when periodically cleared</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>collect per-statement query statistics</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-gateway-node-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />gateway\_node.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>save the gateway node for each statement fingerprint. If false, the value will be stored as 0.</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-index-recommendation-collection-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />index\_recommendation\_collection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>generate an index recommendation for each fingerprint ID</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-max-mem-reported-idx-recommendations" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />max\_mem\_reported\_idx\_recommendations</code></div></td><td>integer</td><td><code>5000</code></td><td>the maximum number of reported index recommendation info stored in memory</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-plan-collection-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />plan\_collection.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>periodically save a logical plan for each fingerprint</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-plan-collection-period" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />plan\_collection.<wbr />period</code></div></td><td>duration</td><td><code>5m0s</code></td><td>the time until a new logical plan is collected</td></tr>
    <tr><td><div id="setting-sql-metrics-statement-details-threshold" class="anchored"><code>sql.<wbr />metrics.<wbr />statement\_details.<wbr />threshold</code></div></td><td>duration</td><td><code>0s</code></td><td>minimum execution time to cause statement statistics to be collected. If configured, no transaction stats are collected.</td></tr>
    <tr><td><div id="setting-sql-metrics-transaction-details-enabled" class="anchored"><code>sql.<wbr />metrics.<wbr />transaction\_details.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>collect per-application transaction statistics</td></tr>
    <tr><td><div id="setting-sql-multiple-modifications-of-table-enabled" class="anchored"><code>sql.<wbr />multiple\_modifications\_of\_table.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if true, allow statements containing multiple INSERT ON CONFLICT, UPSERT, UPDATE, or DELETE subqueries modifying the same table, at the risk of data corruption if the same row is modified multiple times by a single statement (multiple INSERT subqueries without ON CONFLICT cannot cause corruption and are always allowed)</td></tr>
    <tr><td><div id="setting-sql-multiregion-drop-primary-region-enabled" class="anchored"><code>sql.<wbr />multiregion.<wbr />drop\_primary\_region.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>allows dropping the PRIMARY REGION of a database if it is the last region</td></tr>
    <tr><td><div id="setting-sql-notices-enabled" class="anchored"><code>sql.<wbr />notices.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>enable notices in the server/client protocol being sent</td></tr>
    <tr><td><div id="setting-sql-optimizer-uniqueness-checks-for-gen-random-uuid-enabled" class="anchored"><code>sql.<wbr />optimizer.<wbr />uniqueness\_checks\_for\_gen\_random\_uuid.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if enabled, uniqueness checks may be planned for mutations of UUID columns updated with gen\_random\_uuid(); otherwise, uniqueness is assumed due to near-zero collision probability</td></tr>
    <tr><td><div id="setting-sql-schema-telemetry-recurrence" class="anchored"><code>sql.<wbr />schema.<wbr />telemetry.<wbr />recurrence</code></div></td><td>string</td><td><code>@weekly</code></td><td>cron-tab recurrence for SQL schema telemetry job</td></tr>
    <tr><td><div id="setting-sql-show-ranges-deprecated-behavior-enabled" class="anchored"><code>sql.<wbr />show\_ranges\_deprecated\_behavior.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if set, SHOW RANGES and crdb\_internal.ranges\{\_no\_leases} behave with deprecated pre-v23.1 semantics. NB: the new SHOW RANGES interface has richer WITH options than pre-v23.1 SHOW RANGES.</td></tr>
    <tr><td><div id="setting-sql-spatial-experimental-box2d-comparison-operators-enabled" class="anchored"><code>sql.<wbr />spatial.<wbr />experimental\_box2d\_comparison\_operators.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>enables the use of certain experimental box2d comparison operators</td></tr>
    <tr><td><div id="setting-sql-stats-activity-persisted-rows-max" class="anchored"><code>sql.<wbr />stats.<wbr />activity.<wbr />persisted\_rows.<wbr />max</code></div></td><td>integer</td><td><code>200000</code></td><td>maximum number of rows of statement and transaction activity that will be persisted in the system tables</td></tr>
    <tr><td><div id="setting-sql-stats-automatic-collection-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />automatic\_collection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>automatic statistics collection mode</td></tr>
    <tr><td><div id="setting-sql-stats-automatic-collection-fraction-stale-rows" class="anchored"><code>sql.<wbr />stats.<wbr />automatic\_collection.<wbr />fraction\_stale\_rows</code></div></td><td>float</td><td><code>0.2</code></td><td>target fraction of stale rows per table that will trigger a statistics refresh</td></tr>
    <tr><td><div id="setting-sql-stats-automatic-collection-min-stale-rows" class="anchored"><code>sql.<wbr />stats.<wbr />automatic\_collection.<wbr />min\_stale\_rows</code></div></td><td>integer</td><td><code>500</code></td><td>target minimum number of stale rows per table that will trigger a statistics refresh</td></tr>
    <tr><td><div id="setting-sql-stats-cleanup-recurrence" class="anchored"><code>sql.<wbr />stats.<wbr />cleanup.<wbr />recurrence</code></div></td><td>string</td><td><code>@hourly</code></td><td>cron-tab recurrence for SQL Stats cleanup job</td></tr>
    <tr><td><div id="setting-sql-stats-flush-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />flush.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if set, SQL execution statistics are periodically flushed to disk</td></tr>
    <tr><td><div id="setting-sql-stats-flush-interval" class="anchored"><code>sql.<wbr />stats.<wbr />flush.<wbr />interval</code></div></td><td>duration</td><td><code>10m0s</code></td><td>the interval at which SQL execution statistics are flushed to disk, this value must be less than or equal to 1 hour</td></tr>
    <tr><td><div id="setting-sql-stats-forecasts-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />forecasts.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, enables generation of statistics forecasts by default for all tables</td></tr>
    <tr><td><div id="setting-sql-stats-forecasts-max-decrease" class="anchored"><code>sql.<wbr />stats.<wbr />forecasts.<wbr />max\_decrease</code></div></td><td>float</td><td><code>0</code></td><td>the most a prediction is allowed to decrease, expressed as the minimum ratio of the prediction to the lowest prior observation</td></tr>
    <tr><td><div id="setting-sql-stats-forecasts-min-goodness-of-fit" class="anchored"><code>sql.<wbr />stats.<wbr />forecasts.<wbr />min\_goodness\_of\_fit</code></div></td><td>float</td><td><code>0.95</code></td><td>the minimum R² (goodness of fit) measurement required from all predictive models to use a forecast</td></tr>
    <tr><td><div id="setting-sql-stats-forecasts-min-observations" class="anchored"><code>sql.<wbr />stats.<wbr />forecasts.<wbr />min\_observations</code></div></td><td>integer</td><td><code>3</code></td><td>the mimimum number of observed statistics required to produce a statistics forecast</td></tr>
    <tr><td><div id="setting-sql-stats-histogram-buckets-count" class="anchored"><code>sql.<wbr />stats.<wbr />histogram\_buckets.<wbr />count</code></div></td><td>integer</td><td><code>200</code></td><td>maximum number of histogram buckets to build during table statistics collection</td></tr>
    <tr><td><div id="setting-sql-stats-histogram-collection-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />histogram\_collection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>histogram collection mode</td></tr>
    <tr><td><div id="setting-sql-stats-histogram-samples-count" class="anchored"><code>sql.<wbr />stats.<wbr />histogram\_samples.<wbr />count</code></div></td><td>integer</td><td><code>10000</code></td><td>number of rows sampled for histogram construction during table statistics collection</td></tr>
    <tr><td><div id="setting-sql-stats-multi-column-collection-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />multi\_column\_collection.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>multi-column statistics collection mode</td></tr>
    <tr><td><div id="setting-sql-stats-non-default-columns-min-retention-period" class="anchored"><code>sql.<wbr />stats.<wbr />non\_default\_columns.<wbr />min\_retention\_period</code></div></td><td>duration</td><td><code>24h0m0s</code></td><td>minimum retention period for table statistics collected on non-default columns</td></tr>
    <tr><td><div id="setting-sql-stats-persisted-rows-max" class="anchored"><code>sql.<wbr />stats.<wbr />persisted\_rows.<wbr />max</code></div></td><td>integer</td><td><code>1000000</code></td><td>maximum number of rows of statement and transaction statistics that will be persisted in the system tables before compaction begins</td></tr>
    <tr><td><div id="setting-sql-stats-post-events-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />post\_events.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, an event is logged for every CREATE STATISTICS job</td></tr>
    <tr><td><div id="setting-sql-stats-response-max" class="anchored"><code>sql.<wbr />stats.<wbr />response.<wbr />max</code></div></td><td>integer</td><td><code>20000</code></td><td>the maximum number of statements and transaction stats returned in a CombinedStatements request</td></tr>
    <tr><td><div id="setting-sql-stats-response-show-internal-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />response.<wbr />show\_internal.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>controls if statistics for internal executions should be returned by the CombinedStatements and if internal sessions should be returned by the ListSessions endpoints. These endpoints are used to display statistics on the SQL Activity pages</td></tr>
    <tr><td><div id="setting-sql-stats-system-tables-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />system\_tables.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, enables use of statistics on system tables by the query optimizer</td></tr>
    <tr><td><div id="setting-sql-stats-system-tables-autostats-enabled" class="anchored"><code>sql.<wbr />stats.<wbr />system\_tables\_autostats.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>when true, enables automatic collection of statistics on system tables</td></tr>
    <tr><td><div id="setting-sql-telemetry-query-sampling-enabled" class="anchored"><code>sql.<wbr />telemetry.<wbr />query\_sampling.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when set to true, executed queries will emit an event on the telemetry logging channel</td></tr>
    <tr><td><div id="setting-sql-telemetry-query-sampling-internal-enabled" class="anchored"><code>sql.<wbr />telemetry.<wbr />query\_sampling.<wbr />internal.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>when set to true, internal queries will be sampled in telemetry logging</td></tr>
    <tr><td><div id="setting-sql-temp-object-cleaner-cleanup-interval" class="anchored"><code>sql.<wbr />temp\_object\_cleaner.<wbr />cleanup\_interval</code></div></td><td>duration</td><td><code>30m0s</code></td><td>how often to clean up orphaned temporary objects</td></tr>
    <tr><td><div id="setting-sql-temp-object-cleaner-wait-interval" class="anchored"><code>sql.<wbr />temp\_object\_cleaner.<wbr />wait\_interval</code></div></td><td>duration</td><td><code>30m0s</code></td><td>how long after creation a temporary object will be cleaned up</td></tr>
    <tr><td><div id="setting-sql-trace-log-statement-execute" class="anchored"><code>sql.<wbr />trace.<wbr />log\_statement\_execute</code></div></td><td>boolean</td><td><code>false</code></td><td>set to true to enable logging of executed statements</td></tr>
    <tr><td><div id="setting-sql-trace-session-eventlog-enabled" class="anchored"><code>sql.<wbr />trace.<wbr />session\_eventlog.<wbr />enabled</code></div></td><td>boolean</td><td><code>false</code></td><td>set to true to enable session tracing; note that enabling this may have a negative performance impact</td></tr>
    <tr><td><div id="setting-sql-trace-stmt-enable-threshold" class="anchored"><code>sql.<wbr />trace.<wbr />stmt.<wbr />enable\_threshold</code></div></td><td>duration</td><td><code>0s</code></td><td>enables tracing on all statements; statements executing for longer than this duration will have their trace logged (set to 0 to disable); note that enabling this may have a negative performance impact; this setting applies to individual statements within a transaction and is therefore finer-grained than sql.trace.txn.enable\_threshold</td></tr>
    <tr><td><div id="setting-sql-trace-txn-enable-threshold" class="anchored"><code>sql.<wbr />trace.<wbr />txn.<wbr />enable\_threshold</code></div></td><td>duration</td><td><code>0s</code></td><td>enables tracing on all transactions; transactions open for longer than this duration will have their trace logged (set to 0 to disable); note that enabling this may have a negative performance impact; this setting is coarser-grained than sql.trace.stmt.enable\_threshold because it applies to all statements within a transaction as well as client communication (e.g. retries)</td></tr>
    <tr><td><div id="setting-sql-ttl-default-delete-batch-size" class="anchored"><code>sql.<wbr />ttl.<wbr />default\_delete\_batch\_size</code></div></td><td>integer</td><td><code>100</code></td><td>default amount of rows to delete in a single query during a TTL job</td></tr>
    <tr><td><div id="setting-sql-ttl-default-delete-rate-limit" class="anchored"><code>sql.<wbr />ttl.<wbr />default\_delete\_rate\_limit</code></div></td><td>integer</td><td><code>100</code></td><td>default delete rate limit (rows per second) per node for each TTL job. Use 0 to signify no rate limit.</td></tr>
    <tr><td><div id="setting-sql-ttl-default-select-batch-size" class="anchored"><code>sql.<wbr />ttl.<wbr />default\_select\_batch\_size</code></div></td><td>integer</td><td><code>500</code></td><td>default amount of rows to select in a single query during a TTL job</td></tr>
    <tr><td><div id="setting-sql-ttl-job-enabled" class="anchored"><code>sql.<wbr />ttl.<wbr />job.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>whether the TTL job is enabled</td></tr>
    <tr><td><div id="setting-sql-txn-fingerprint-id-cache-capacity" class="anchored"><code>sql.<wbr />txn\_fingerprint\_id\_cache.<wbr />capacity</code></div></td><td>integer</td><td><code>100</code></td><td>the maximum number of txn fingerprint IDs stored</td></tr>
    <tr><td><div id="setting-storage-max-sync-duration" class="anchored"><code>storage.<wbr />max\_sync\_duration</code></div></td><td>duration</td><td><code>20s</code></td><td>maximum duration for disk operations; any operations that take longer than this setting trigger a warning log entry or process crash</td></tr>
    <tr><td><div id="setting-storage-max-sync-duration-fatal-enabled" class="anchored"><code>storage.<wbr />max\_sync\_duration.<wbr />fatal.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if true, fatal the process when a disk operation exceeds storage.max\_sync\_duration</td></tr>
    <tr><td><div id="setting-storage-value-blocks-enabled" class="anchored"><code>storage.<wbr />value\_blocks.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>set to true to enable writing of value blocks in sstables</td></tr>
    <tr><td><div id="setting-timeseries-storage-enabled" class="anchored"><code>timeseries.<wbr />storage.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if set, periodic timeseries data is stored within the cluster; disabling is not recommended unless you are storing the data elsewhere</td></tr>
    <tr><td><div id="setting-timeseries-storage-resolution-10s-ttl" class="anchored"><code>timeseries.<wbr />storage.<wbr />resolution\_10s.<wbr />ttl</code></div></td><td>duration</td><td><code>240h0m0s</code></td><td>the maximum age of time series data stored at the 10 second resolution. Data older than this is subject to rollup and deletion.</td></tr>
    <tr><td><div id="setting-timeseries-storage-resolution-30m-ttl" class="anchored"><code>timeseries.<wbr />storage.<wbr />resolution\_30m.<wbr />ttl</code></div></td><td>duration</td><td><code>2160h0m0s</code></td><td>the maximum age of time series data stored at the 30 minute resolution. Data older than this is subject to deletion.</td></tr>
    <tr><td><div id="setting-trace-debug-enable" class="anchored"><code>trace.<wbr />debug.<wbr />enable</code></div></td><td>boolean</td><td><code>false</code></td><td>if set, traces for recent requests can be seen at https\://\<ui>/debug/requests</td></tr>
    <tr><td><div id="setting-trace-jaeger-agent" class="anchored"><code>trace.<wbr />jaeger.<wbr />agent</code></div></td><td>string</td><td><code /></td><td>the address of a Jaeger agent to receive traces using the Jaeger UDP Thrift protocol, as \<host>:\<port>. If no port is specified, 6381 will be used.</td></tr>
    <tr><td><div id="setting-trace-opentelemetry-collector" class="anchored"><code>trace.<wbr />opentelemetry.<wbr />collector</code></div></td><td>string</td><td><code /></td><td>address of an OpenTelemetry trace collector to receive traces using the otel gRPC protocol, as \<host>:\<port>. If no port is specified, 4317 will be used.</td></tr>
    <tr><td><div id="setting-trace-snapshot-rate" class="anchored"><code>trace.<wbr />snapshot.<wbr />rate</code></div></td><td>duration</td><td><code>0s</code></td><td>if non-zero, interval at which background trace snapshots are captured</td></tr>
    <tr><td><div id="setting-trace-span-registry-enabled" class="anchored"><code>trace.<wbr />span\_registry.<wbr />enabled</code></div></td><td>boolean</td><td><code>true</code></td><td>if set, ongoing traces can be seen at https\://\<ui>/#/debug/tracez</td></tr>
    <tr><td><div id="setting-trace-zipkin-collector" class="anchored"><code>trace.<wbr />zipkin.<wbr />collector</code></div></td><td>string</td><td><code /></td><td>the address of a Zipkin instance to receive traces, as \<host>:\<port>. If no port is specified, 9411 will be used.</td></tr>
    <tr><td><div id="setting-version" class="anchored"><code>version</code></div></td><td>version</td><td><code>23.1</code></td><td>set the active cluster version in the format '\<major>.\<minor>'</td></tr>
  </tbody>
</table>

## View current cluster settings

Use the <InternalLink path="show-cluster-setting">`SHOW CLUSTER SETTING`</InternalLink> statement.

## Change a cluster setting

Use the <InternalLink path="set-cluster-setting">`SET CLUSTER SETTING`</InternalLink> statement.

Before changing a cluster setting, note the following:

* Changing a cluster setting is not instantaneous, as the change must be propagated to other nodes in the cluster.

* Do not change cluster settings while <InternalLink path="upgrade-cockroach-version">upgrading to a new version of CockroachDB</InternalLink>. Wait until all nodes have been upgraded before you make the change.

## See also

* <InternalLink path="set-cluster-setting">`SET CLUSTER SETTING`</InternalLink>
* <InternalLink path="show-cluster-setting">`SHOW CLUSTER SETTING`</InternalLink>
* <InternalLink path="diagnostics-reporting">Diagnostics Reporting</InternalLink>
* <InternalLink path="cockroach-start">Start a Node</InternalLink>
* <InternalLink path="cockroach-sql">Use the Built-in SQL Client</InternalLink>
