Skip to content

[backport 3.3] box: handle cancelling fiber waiting in wal queue#11277

Merged
sergepetrenko merged 1 commit intorelease/3.3from
backport/release/3.3/11273
Mar 21, 2025
Merged

[backport 3.3] box: handle cancelling fiber waiting in wal queue#11277
sergepetrenko merged 1 commit intorelease/3.3from
backport/release/3.3/11273

Conversation

@TarantoolBot
Copy link
Collaborator

@TarantoolBot TarantoolBot commented Mar 21, 2025

(This PR is a backport of #11273 to release/3.3 to a future 3.3.2 release.)


Currently if fiber waiting in wal queue is cancelled it will go on writing to all breaking queue order. So wal is corrupted so that even next Tarantool restart may fail. Unfortunately we cancel fibers on Tarantool shutdown so the issue may arise just buy terminating Tarantool instance.

Let's instead fail the cancelled request and all the newer request in the queue.

Work around is to disable wal queue by box.cfg{wal_queue_max_size = 0} so that only one write request can be in the queue.

Closes #11078

Currently if fiber waiting in WAL queue is cancelled it will go on
writing request to WAL breaking queue order. So WAL is corrupted so that
even next Tarantool restart may fail. Unfortunately we cancel fibers on
Tarantool shutdown so the issue may arise just buy terminating Tarantool
instance.

Let's instead fail the cancelled request and all the newer request in
the queue.

Work around is to disable WAL queue by `box.cfg{wal_queue_max_size = 0}`
so that only one write request can be in the queue.

Closes #11078

NO_DOC=bugfix

(cherry picked from commit def4456)
@TarantoolBot TarantoolBot added the full-ci Enables all tests for a pull request label Mar 21, 2025
@TarantoolBot TarantoolBot requested a review from a team as a code owner March 21, 2025 07:28
@TarantoolBot TarantoolBot changed the title [Backport release/3.3] box: handle cancelling fiber waiting in wal queue [backport 3.3] box: handle cancelling fiber waiting in wal queue Mar 21, 2025
@coveralls
Copy link

Coverage Status

coverage: 87.462% (+0.006%) from 87.456%
when pulling a1d91a7 on backport/release/3.3/11273
into b7a837c
on release/3.3
.

@sergepetrenko sergepetrenko merged commit 30140eb into release/3.3 Mar 21, 2025
43 of 44 checks passed
@sergepetrenko sergepetrenko deleted the backport/release/3.3/11273 branch March 21, 2025 11:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

full-ci Enables all tests for a pull request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants