• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / tarantool / 10467747373
88%

Build:
DEFAULT BRANCH: master
Ran 20 Aug 2024 08:22AM UTC
Jobs 1
Files 514
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

20 Aug 2024 08:08AM UTC coverage: 87.184% (+0.01%) from 87.173%
10467747373

push

github

locker
box: drop iproto connections before client fibers on shutdown

Currently we have such order of shutting down: client fibers, then
iproto subsystem and then fiber pool (details can be found in e513d4c).
The problem is iproto produces new fibers in `tx_fiber_pool` when
processing new requests so when Tarantool is shutting down client
fiber, a new one can appear and it won't be handled. Moreover, there is
no point in handling such fibers because one can appear even after all
client fibers are finished.

Also, we cannot just stop `tx_fiber_pool` so that it won't produce new
workers while shutting down client fibers because it's also needed for
vinyl. But since only iproto can produce new client (non-system)
long-living fibers when shutting down, let's simply drop all iproto
connections before finishing client fibers. From user's point of view,
one thing will be changed - he will receive `Peer closed` error message
instead of `fiber is cancelled` for hanging requests. I don't think it's
bad because the new message better reflects that Tarantool is being
stopped and that the error is not retriable.

By the way, we already disallow accepting new iproto connections right
before shutdown (`iproto_on_shutdown_f`) but the problem is connected
client can keep sending requests. And that's why our replication tests
became flaky - if shutdown happens between JOIN and SUBSCRIBE, fiber
pool produces new client fiber after we cancelled all such fibers.

Follow-up #9722
Closes #10313

NO_CHANGELOG=internal
NO_DOC=internal

68294 of 121565 branches covered (56.18%)

3 of 3 new or added lines in 1 file covered. (100.0%)

45 existing lines in 16 files now uncovered.

100928 of 115764 relevant lines covered (87.18%)

2398179.99 hits per line

Jobs
ID Job ID Ran Files Coverage
1 10467747373.1 20 Aug 2024 08:22AM UTC 0
87.18
GitHub Action Run
Source Files on build 10467747373
Detailed source file information is not available for this build.
  • Back to Repo
  • 507ba20d on github
  • Prev Build on master (#10459505389)
  • Next Build on master (#10487106310)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc