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

tarantool / tarantool / 13385706664
86%
master: 88%

Build:
Build:
LAST BUILD BRANCH: ligurio/gh-12097-support-oss-fuzz
DEFAULT BRANCH: master
Ran 18 Feb 2025 08:25AM UTC
Jobs 1
Files 479
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

18 Feb 2025 07:48AM UTC coverage: 86.015% (-0.002%) from 86.017%
13385706664

push

github

locker
vinyl: take into account deferred DELETEs when creating cache chains

Each cache chain stores the max LSN among all DELETE statements that are
known to fall in the chain. This LSN is required so that an older read
view can ignore the chain, otherwise it could skip tuples deleted after
the read view was created (see the previous commit).

The problem is, apart from regular DELETE statements, there may be so
called "deferred" ones. Deferred DELETE statements aren't written to
secondary indexes immediately on commit - this is done later, when
the primary index is compacted. If we don't find the corresponding
full tuple in the primary index by a partial tuple key fetched from
a secondary index, we skip it and create a cache chain leaping over
it so that we don't read it again on the next scan. We don't take
into account the deferred DELETE LSN in this case, as a result,
we face the same problem we fixed in the previous commit for regular
DELETEs.

To avoid that, let's keep track of the max LSN among all skipped
statements and use it for the cache chain. Note, we have to patch
vy_point_lookup() so that it can keep a DELETE statement instead of
returning NULL - we need it to extract its LSN for the cache. This
changes the stats a bit hence the vinyl/deferred_delete test update.

Closes #11079

NO_DOC=bug fix

(cherry picked from commit d31bd73d6)

63441 of 114794 branches covered (55.27%)

17 of 17 new or added lines in 2 files covered. (100.0%)

56 existing lines in 11 files now uncovered.

94376 of 109720 relevant lines covered (86.02%)

2357310.19 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
86.58
-0.04% src/box/box.cc
1
96.0
-4.0% src/lib/core/trigger.h
1
91.45
0.0% src/lib/swim/swim.c
2
94.81
-0.55% src/box/tuple.c
2
92.05
0.06% src/box/vinyl.c
2
84.01
-0.74% src/lib/core/coio.c
4
93.31
-1.27% src/lib/swim/swim_io.c
4
81.82
-12.12% src/lua/minifio.c
5
93.71
-0.83% src/box/replication.cc
15
89.23
0.02% src/box/vy_lsm.c
19
95.03
0.41% src/box/vy_cache.c
Jobs
ID Job ID Ran Files Coverage
1 13385706664.1 18 Feb 2025 08:25AM UTC 479
86.02
GitHub Action Run
Source Files on build 13385706664
  • Tree
  • List 479
  • Changed 396
  • Source Changed 0
  • Coverage Changed 21
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 69e26eeb on github
  • Prev Build on release/2.11 (#13372909875)
  • Next Build on release/2.11 (#13393492527)
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