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

tarantool / tarantool / 17241528959
88%

Build:
DEFAULT BRANCH: master
Ran 26 Aug 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

26 Aug 2025 02:37PM UTC coverage: 87.621% (+0.02%) from 87.606%
17241528959

push

github

sergepetrenko
limbo: allow current term CONFIRMs to be nopified

Previously the limbo would treat receipt of CONFIRM for an
already confirmed LSN in the current term as an error. But
actually there seems to be no reason to do that.

Here is a usecase. A replica starts joining a master. The master
has some txns in the limbo. The relay would flush the txns to the
journal and get its vclock. This is going to be the snapshot
vclock of the replica.

Then the relay waits for the txns to get committed. CONFIRMs for
those txns are going to get written after the replica's vclock.

Next, the relay would save the current confirmed LSN and send it
+ the data to the replica.

Logically the replica looks good. It has some valid fully
confirmed snapshot and a correctly saved limbo checkpoint with the
right confirmed LSN.

But now the replica would start catching up and would download the
CONFIRM from the master which it actually already knows. It was in
the initial limbo checkpoint sent to this replica. It is sent
"again" because the replica's vclock doesn't include this CONFIRM
yet.

It seems logical that the replica must simply nopify such CONFIRM.
So lets do just that. Similar logic seems to be applicable to
ROLLBACK. Except that it was already idempotent in the current
term. And in the older terms its effect is already applied by
PROMOTE of the current term.

Now those strict filters only remain for PROMOTE/DEMOTE commands.

Closes #11180

NO_DOC=bugfix
NO_CHANGELOG=already written

71230 of 125011 branches covered (56.98%)

42 of 44 new or added lines in 2 files covered. (95.45%)

447 existing lines in 21 files now uncovered.

104694 of 119485 relevant lines covered (87.62%)

1364653.32 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
90.72
0.19% src/box/applier.cc

Uncovered Existing Lines

Lines Coverage ∆ File
1
90.72
0.19% src/box/applier.cc
1
88.82
-0.62% src/box/engine.c
1
96.88
-1.56% src/box/engine.h
1
80.74
-0.41% src/box/tuple_bloom.c
1
98.31
0.0% src/box/txn.h
1
90.14
-0.08% src/box/vy_log.c
1
84.82
0.16% src/box/xlog.c
2
98.06
-0.01% src/box/lua/info.c
2
93.95
-0.3% src/box/memtx_space.c
2
87.94
-0.08% src/box/vy_run.c
3
22.66
-0.06% src/lib/uri/uri_parser.c
4
92.45
-0.18% src/box/vinyl.c
5
96.95
-0.51% src/lib/msgpuck/msgpuck.h
7
93.2
-1.75% src/box/journal.c
9
88.14
-7.63% src/box/vy_regulator.c
17
93.87
0.07% src/box/txn.c
26
92.13
-0.15% src/box/gc.c
41
90.99
-0.01% src/box/memtx_engine.cc
43
94.45
0.62% src/box/txn_limbo.c
55
89.52
-0.26% src/box/wal.c
224
91.33
0.44% src/box/box.cc
Jobs
ID Job ID Ran Files Coverage
1 17241528959.1 26 Aug 2025 02:52PM UTC 513
87.62
GitHub Action Run
Source Files on build 17241528959
  • Tree
  • List 513
  • Changed 33
  • Source Changed 0
  • Coverage Changed 33
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • e454545e on github
  • Prev Build on master (#17214726123)
  • Next Build on master (#17263269689)
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