Skip to content

fix: bound default lock wait timeout#25709

Open
iamlinjunhong wants to merge 3 commits into
matrixorigin:4.1-devfrom
iamlinjunhong:d-24915
Open

fix: bound default lock wait timeout#25709
iamlinjunhong wants to merge 3 commits into
matrixorigin:4.1-devfrom
iamlinjunhong:d-24915

Conversation

@iamlinjunhong

Copy link
Copy Markdown
Contributor

What type of PR is this?

  • API-change
  • BUG
  • Improvement
  • Documentation
  • Feature
  • Test and CI
  • Code Refactoring

Which issue(s) this PR fixes:

issue #24915

What this PR does / why we need it:

fix: bound default lock wait timeout

@qodo-code-review

Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

Roll back the whole transaction on error 1205, use a 120-second transitional default, and add a bounded lockservice safety ceiling with deadline propagation and observability. Propagate per-execution budgets for background SQL and deduplicate slow-wait warnings.

Part of matrixorigin#24915
@matrix-meow matrix-meow added size/M Denotes a PR that changes [100,499] lines and removed size/S Denotes a PR that changes [10,99] lines labels Jul 16, 2026

@XuPeng-SH XuPeng-SH left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Reviewed ca2a670.

The timeout budget is bounded end-to-end across frontend/session propagation, local and remote lockservice paths, async waiter re-queues, lockop retries, and the safety ceiling. Waiter timers/cancellation/cleanup are symmetric, and whole-transaction rollback is covered for MySQL 1205.

Locally verified the focused lockservice/frontend/executor/lockop tests, including race coverage for waiter timer/notify and lockop deadline paths; go vet and diff checks pass. The latest delta also deterministically covers every whole-txn rollback error code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/L Denotes a PR that changes [500,999] lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants