cockroachdb / cockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.
https://www.cockroachlabs.com
Other
29.86k stars 3.77k forks source link

kvserver: smear size based range splits #125929

Open kvoli opened 2 months ago

kvoli commented 2 months ago

When running a uniform write workload, on a uniformly sized keyspace, ranges will split in half at approximately the same time.

Normally, when a few ranges split this isn't expected to have any impact as https://github.com/cockroachdb/cockroach/issues/22348 removes the latch contention latency. However, scanning the range data simultaneously for many splits can cause CPU exhaustion, which does result in higher tail latency.

image image

This issue is to smear, or space out size-based range splits so that they do not all occur at the same time for uniform workloads.

Jira issue: CRDB-39670

Epic CRDB-39952

blathers-crl[bot] commented 2 months ago

Hi @kvoli, please add branch-* labels to identify which branch(es) this C-bug affects.

:owl: Hoot! I am a Blathers, a bot for CockroachDB. My owner is dev-inf.