-
Notifications
You must be signed in to change notification settings - Fork 4.1k
kvnemesis: make deletions unique #88988
Description
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.
Jira issue: CRDB-20067