-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Description
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