cockroachdb / cockroachdb/cockroach

kv: integrate liveness range scans with admission control

Open
#165,112 1 comment 0 reactions 0 assignees View on GitHub
A-kv branch-master C-bug P-2 T-kv
Dominant language
Go
Stars
32.5k
Forks
4.1k
PR merge metrics
PR metrics pending

Description

The non-transactional `db.Scan` API does not set admission control headers.
This is an unintentional gap that allows non-urgent liveness range scans to
bypass AC entirely, contributing to latch contention on the liveness range
during incidents.

This issue covers:

1. Add AC headers to liveness range scans that don't need elevated priority.
Some scans are intentional and high-priority (e.g. heartbeats), but
others should be properly classified and rate-limited.
2. Evaluate the transactional vs. non-transactional API in the liveness
package. Rate-limiting through AC is complicated by the non-transactional
API ergonomics, so this evaluation is a prerequisite for a clean
solution.

See also #164066 (original issue).

Jira issue: CRDB-61211

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.