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

tarantool / tarantool / 18975811628
88%
master: 88%

Build:
Build:
LAST BUILD BRANCH: gh-12608-memtx-fix-replace-rollback-after-result-tuple-preparing-error
DEFAULT BRANCH: master
Ran 31 Oct 2025 02:52PM UTC
Jobs 1
Files 513
Run time 2min
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

31 Oct 2025 02:35PM UTC coverage: 87.63% (+0.008%) from 87.622%
18975811628

push

github

sergepetrenko
memtx: abort gaps after rollback

This commit fixes a Memtx-MVCC related bug that could lead to dirty gap
read in secondary indexes after rollback.

One REPLACE transaction (prepared but not yet committed) creates a
temporary situation where another concurrent transaction cannot see a
specific key in a secondary index (a "read gap"). When the first
transaction then rolls back, the previous (replaced) tuple becomes visible
again, and the "read gap" becomes irrelevant (the key becomes visible once
more). In this case, the second transaction, which read the gap, should be
aborted. However, it successfully commits, leading to a non-serializable
schedule.

This commit fixes the issue by adding the necessary handling during
rollback. Now, all such irrelevant gaps are aborted.

Closes #11802

NO_DOC=bugfix

(cherry picked from commit 2a9a463e5)

69811 of 117617 branches covered (59.35%)

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

63 existing lines in 13 files now uncovered.

104786 of 119578 relevant lines covered (87.63%)

1361208.83 hits per line

Coverage Regressions

Lines Coverage ∆ File
38
97.42
0.01% src/box/memtx_tx.c
8
60.42
-5.56% src/lib/core/fio.c
3
94.15
-1.06% src/box/vy_range.c
2
98.31
0.0% src/box/txn.h
2
92.46
-0.09% src/box/vinyl.c
2
96.03
-0.42% src/box/vy_read_iterator.c
2
95.45
-4.55% src/lib/json/json.h
1
90.92
0.03% src/box/box.cc
1
89.2
-0.06% src/box/xrow.c
1
93.11
0.18% src/lib/core/fiber.c
1
97.15
0.0% src/lib/msgpuck/msgpuck.h
1
91.68
-0.11% src/lib/swim/swim.c
1
97.41
-0.86% src/lib/vclock/vclock.c
Jobs
ID Job ID Ran Files Coverage
1 18975811628.1 31 Oct 2025 02:52PM UTC 513
87.63
GitHub Action Run
Source Files on build 18975811628
  • Tree
  • List 513
  • Changed 27
  • Source Changed 0
  • Coverage Changed 27
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 72a22cb7 on github
  • Prev Build on release/3.5 (#18905057327)
  • Next Build on release/3.5 (#18975859333)
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