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

tarantool / tarantool / 13416842160
88%
master: 88%

Build:
Build:
LAST BUILD BRANCH: gerold103/gh-12333-flaky-promote-rw-wait
DEFAULT BRANCH: master
Ran 19 Feb 2025 04:22PM UTC
Jobs 1
Files 518
Run time 4min
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

19 Feb 2025 03:55PM UTC coverage: 87.422% (-0.008%) from 87.43%
13416842160

push

github

locker
vinyl: don't create cache chain over unconfirmed deferred DELETE

While scanning a non-unique secondary index of a vinyl space, we skip
a tuple if there's no match for it in the primary index because it means
that the tuple was overwritten by a newer statement but the secondary
index DELETE was deferred until compaction. We still create a cache
chain link in this case so that we skip the overwritten tuple when
we scan the secondary index next time. We do it even if the overwriting
statement is unconfirmed (not yet written to WAL), which is actually
incorrect. The problem is that if the overwriting statement is rolled
back on a WAL write error, the chain created in the secondary index
cache won't be broken because nothing was actually written to the
secondary index (DELETE was deferred) therefore there's nothing to
roll back therefore there's nothing to invalidate the cache by.
As a result, the tuple that the user attempted to delete but failed
due to a WAL error will become inaccessible via the secondary index
because of the stale cache chain.

Fix this issue by disabling creation of a cache chain link in case
the read iterator skipped an unconfirmed deferred DELETE statement.

Closes #11140

NO_DOC=bug fix

(cherry picked from commit 74f45f41c)

69875 of 123749 branches covered (56.47%)

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

50 existing lines in 12 files now uncovered.

102884 of 117686 relevant lines covered (87.42%)

2178965.96 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
89.09
-1.82% src/box/xlog.h
1
80.0
-2.05% src/lib/core/clock.c
1
93.12
0.09% src/lib/core/fiber.c
2
86.27
-0.42% src/box/vy_stmt.c
2
97.15
-0.2% src/lib/msgpuck/msgpuck.h
2
94.22
-0.39% src/lua/fiber.c
3
97.95
-0.22% src/box/memtx_tx.c
3
84.18
-0.27% src/box/xlog.c
4
93.31
-1.27% src/lib/swim/swim_io.c
6
92.51
-0.18% src/box/vinyl.c
9
60.42
-6.25% src/lib/core/fio.c
16
90.91
-0.38% src/box/box.cc
Jobs
ID Job ID Ran Files Coverage
1 13416842160.1 19 Feb 2025 04:22PM UTC 518
87.42
GitHub Action Run
Source Files on build 13416842160
  • Tree
  • List 518
  • Changed 433
  • Source Changed 0
  • Coverage Changed 26
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 148ac02d on github
  • Prev Build on release/3.3 (#13412148028)
  • Next Build on release/3.3 (#13459354959)
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