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

txn: PessimisticLock with min_commit_ts #7291

Merged

Conversation

youjiali1995
Copy link
Contributor

Signed-off-by: youjiali1995 zlwgx1023@gmail.com

What problem does this PR solve?

Issue Number: close #7289

Problem Summary:
If the primary lock is pessimistic lock and some secondary locks are optimistic locks, these secondary locks will block reads because the pessimistic lock can't be pushed its commit ts.

What is changed and how it works?

What's Changed:
Add min_commit_ts field to pessimistic locks and check_txn_status can push forward it.
kvproto: pingcap/kvproto#588

Related changes

  • Need to cherry-pick to the release branch

Check List

Tests

  • Unit test
  • Integration test

Side effects

Release note

An issue that optimistic locks may blocks reads if the corresponding primary lock is a pessimistic lock has been fixed.

@youjiali1995 youjiali1995 added sig/transaction SIG: Transaction type/bugfix Type: PR - Fix a bug needs-cherry-pick-release-4.0 Type: Need cherry pick to release 4.0 labels Mar 29, 2020
@youjiali1995 youjiali1995 added this to the v4.0.0-rc milestone Mar 29, 2020
Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
@youjiali1995 youjiali1995 force-pushed the push-pessimistic-locks-min-commit-ts branch from f47c2ce to a62d6df Compare March 31, 2020 02:53
@youjiali1995 youjiali1995 removed this from the v4.0.0-rc milestone Mar 31, 2020
@youjiali1995 youjiali1995 requested a review from nrc March 31, 2020 05:53
Copy link
Contributor

@nrc nrc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@youjiali1995
Copy link
Contributor Author

@sticnarf PTAL

Copy link
Contributor

@sticnarf sticnarf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
@youjiali1995
Copy link
Contributor Author

/merge

@sre-bot sre-bot added the status/can-merge Status: Can merge to base branch label Apr 1, 2020
@sre-bot
Copy link
Contributor

sre-bot commented Apr 1, 2020

/run-all-tests

@sre-bot sre-bot merged commit badaeb2 into tikv:master Apr 1, 2020
@sre-bot
Copy link
Contributor

sre-bot commented Apr 1, 2020

cherry pick to release-4.0 in PR #7328

@youjiali1995 youjiali1995 deleted the push-pessimistic-locks-min-commit-ts branch April 1, 2020 15:06
sre-bot added a commit that referenced this pull request Apr 8, 2020
Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
c1ay pushed a commit to c1ay/tikv that referenced this pull request May 9, 2020
Signed-off-by: youjiali1995 <zlwgx1023@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs-cherry-pick-release-4.0 Type: Need cherry pick to release 4.0 sig/transaction SIG: Transaction status/can-merge Status: Can merge to base branch type/bugfix Type: PR - Fix a bug
Projects
Transaction SIG
Awaiting triage
Development

Successfully merging this pull request may close these issues.

Optimistic lock blocks reads
4 participants