Skip to content

workload: add contention options to the KV workload #151038

@miraradeva

Description

@miraradeva

Currently, the KV workload consists mostly of non-transactional reads and writes, which leaves little room for experimenting with various contention setups.

The only transactional writes are via the sfu-writes flag, which uses a SFU, followed by a configurable sleep duration (sfu-wait-delay), and a transactional write. Varying the sleep duration is one way to introduce contention: a concurrent reader will conflict with the exclusive lock held by the SFU for the duration of the transaction. There is a small window of opportunity to conflict with the intent as well, but the transaction commits immediately after.

For the purposes of evaluating improvements related to non-blocking reads, it would be useful to have more configurable contention options: e.g. a long-running transaction that takes out exclusive locks and/or intents.

Jira issue: CRDB-53069

Epic CRDB-49119

Metadata

Metadata

Assignees

Labels

A-kv-transactionsRelating to MVCC and the transactional model.C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)T-kvKV Teamtarget-release-25.4.0

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions