Skip to content

kvnemesis: make deletions unique #88988

@tbg

Description

@tbg

Is your feature request related to a problem? Please describe.

kvnemesis will be much simpler and powerful if it has a way to uniquely map deletions observed via the rangefeed, i.e. (key,timestamp) pairs, to its operations.

It relies on such a unique mapping for all operations (by writing unique values) but deletions don't offer it, leading to more complexity and situations in which kvnemesis can't verify histories.

Describe the solution you'd like

Allow kvnemesis to embed a payload in MVCCValueHeader.

Describe alternatives you've considered

We could also make deletions "choose their value", i.e. not force them to be represented by empty roachpb.Value at the MVCC layer. That way, kvnemesis could use its unique values "verbatim" by putting them into the deletes.

Additional context

This also needs to work for MVCCDeleteRangeUsingTombstone.


#69642

Jira issue: CRDB-20067

Metadata

Metadata

Assignees

Labels

C-enhancementSolution expected to add code/behavior + preserve backward-compat (pg compat issues are exception)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions