Skip to content

box: rollback txns in WAL queue before in-flight tnxs#11279

Merged
sergepetrenko merged 1 commit intotarantool:masterfrom
nshy:gh-11179-wal-queue-rollback
Mar 27, 2025
Merged

box: rollback txns in WAL queue before in-flight tnxs#11279
sergepetrenko merged 1 commit intotarantool:masterfrom
nshy:gh-11179-wal-queue-rollback

Conversation

@nshy
Copy link
Contributor

@nshy nshy commented Mar 21, 2025

In case of WAL error we should rollback txns in WAL queue before any in-flight txns (already submitted to WAL thread).

Work around is to disable WAL queue by box.cfg{wal_queue_max_size = 0} so that no request can be queued.

Closes #11179

@nshy nshy requested a review from a team as a code owner March 21, 2025 08:00
@coveralls
Copy link

coveralls commented Mar 21, 2025

Coverage Status

coverage: 87.474% (+0.008%) from 87.466%
when pulling b7924f4 on nshy:gh-11179-wal-queue-rollback
into 76c8264
on tarantool:master
.

@nshy nshy requested a review from locker March 21, 2025 08:43
@locker locker requested a review from sergepetrenko March 21, 2025 10:12
@locker locker assigned sergepetrenko and nshy and unassigned locker Mar 21, 2025
@nshy nshy force-pushed the gh-11179-wal-queue-rollback branch from 61e4f30 to 6cc0689 Compare March 21, 2025 11:04
@nshy nshy removed their assignment Mar 21, 2025
Copy link
Collaborator

@sergepetrenko sergepetrenko left a comment

Choose a reason for hiding this comment

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

Thanks! It was a nasty bug.

@sergepetrenko sergepetrenko assigned nshy and unassigned sergepetrenko Mar 21, 2025
@nshy nshy assigned sergepetrenko and unassigned nshy Mar 24, 2025
@sergepetrenko sergepetrenko assigned nshy and unassigned sergepetrenko Mar 25, 2025
In case of WAL error we should rollback txns in WAL queue before any
in-flight txns (already submitted to WAL thread).

Work around is to disable WAL queue by `box.cfg{wal_queue_max_size = 0}`
so that no request can be queued.

Closes tarantool#11179

NO_DOC=bugfix
@nshy nshy force-pushed the gh-11179-wal-queue-rollback branch from 6cc0689 to b7924f4 Compare March 25, 2025 07:51
@nshy nshy assigned sergepetrenko and unassigned nshy Mar 25, 2025
Copy link
Collaborator

@sergepetrenko sergepetrenko left a comment

Choose a reason for hiding this comment

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

Thanks for the fix!
LGTM.

@sergepetrenko sergepetrenko added full-ci Enables all tests for a pull request backport/2.11 Automatically create a 2.11 backport PR backport/3.2 Automatically create a 3.2 backport PR backport/3.3 Automatically create a 3.3 backport PR and removed full-ci Enables all tests for a pull request labels Mar 27, 2025
@sergepetrenko sergepetrenko merged commit 9942499 into tarantool:master Mar 27, 2025
62 of 83 checks passed
@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/2.11:

@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/3.2:

@TarantoolBot
Copy link
Collaborator

Successfully created backport PR for release/3.3:

@TarantoolBot
Copy link
Collaborator

Backport summary

@nshy nshy deleted the gh-11179-wal-queue-rollback branch April 3, 2025 09:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport/2.11 Automatically create a 2.11 backport PR backport/3.2 Automatically create a 3.2 backport PR backport/3.3 Automatically create a 3.3 backport PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

WAL does not respect rollback order when its queue is full

6 participants