cockroachdb / cockroachdb/cockroach

spanconfig: default span config for ranges with no zone config

Open
#148,089 0 comments 0 reactions 0 assignees View on GitHub
A-zone-configs C-enhancement O-support P-3 T-kv
Dominant language
Go
Stars
32.5k
Forks
4.1k
PR merge metrics
PR metrics pending

Description

Currently, when a table is dropped, its zone configs and corresponding span configs are dropped too, potentially leaving empty ranges with no explicit span configs. These ranges the inherit the [static zone config](https://github.com/cockroachdb/cockroach/blob/6b643830361b740ba7d21598b478e202a9c08c04/pkg/config/zonepb/zone.go#L253), as opposed to the one set by the customer via `ALTER RANGE default CONFIGURE ZONE`. To override this behavior, and be able to set a specific fallback config, we have a cluster setting (`spanconfig.store.fallback_config_override`); however, this is a private cluster setting, and it's not usually known to customers.

These empty ranges would typically get merged soon after the table drop, and don't violate any data domiciling requirements, but the behavior is unintuitive and surprising to customers.

We should decide and either:
1. Change the default behavior to respect the customer-set range default for ranges with no explicit span configs.
2. Make the `spanconfig.store.fallback_config_override` cluster setting public and encourage customers to use it.

Jira issue: CRDB-51395

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.