Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kv: test replay protection on all writes #107662

Conversation

AlexTalks
Copy link
Contributor

!DNM!
This is intended to test the behavior of enabling replay protection for
all writes, such that they will fail if an idempotent write replay is
performed with a different timestamp at the same epoch and sequence for
a transaction.

Depends on #107596.

Fixes: #103817

Release note (bug fix): TBD

This adds a unit test to reproduce the behavior described in cockroachdb#103817 and
seen in cockroachdb#67765, which currently is a bug in our implementation of the
parallel commit protocol that results in the assertion failure known as
`transaction unexpectedly committed`. The test currently validates the
incorrect behavior of the known issue, though it is inded to be used to
validate the potential fixes as proposed in cockroachdb#103817.

Release note: None

Part of: cockroachdb#103817
!DNM!
This is intended to test the behavior of enabling replay protection for
all writes, such that they will fail if an idempotent write replay is
performed with a different timestamp at the same epoch and sequence for
a transaction.

Depends on cockroachdb#107596.

Fixes: cockroachdb#103817

Release note (bug fix): TBD
@AlexTalks AlexTalks added the do-not-merge bors won't merge a PR with this label. label Jul 26, 2023
@AlexTalks AlexTalks requested review from a team as code owners July 26, 2023 19:34
@AlexTalks AlexTalks requested a review from sumeerbhola July 26, 2023 19:34
@cockroach-teamcity
Copy link
Member

This change is Reviewable

@AlexTalks AlexTalks closed this Jul 27, 2023
@tbg
Copy link
Member

tbg commented Jul 27, 2023

Btw you can use a draft PR for this next time, then it won't notify people except direct assignees.

@AlexTalks
Copy link
Contributor Author

Thanks @tbg! I usually would but I (incorrectly) thought the CI suite for drafts would be different. TIL :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
do-not-merge bors won't merge a PR with this label.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

kv: properly handle ambiguous errors that occur alongside commits
3 participants