kvcoord: can opt out of abortspan checks when write buffer is complete #140593
Labels
A-kv-transactions
Relating to MVCC and the transactional model.
C-enhancement
Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)
o-perf-efficiency
Related to performance efficiency
T-kv
KV Team
Once buffered writes are implemented, we can bypass abort span checks (via a flag on the
BatchRequest
) in the common case in which the write set of the transaction (or at least the write set overlapping the batch) is completely contained in the write buffer. This is because the abort span exists only to guard against cases in which intents of a transaction were forcibly removed, but the transaction may not be aware. But if all reads are served against the write buffer, this protection is not necessary at the KV layer.Once implemented, this would address a large part of #122719, since we simply wouldn't have to run the abort span check for (hopefully large) classes of workloads.
See also #122719 (comment).
Epic: CRDB-42764
Jira issue: CRDB-47255
The text was updated successfully, but these errors were encountered: