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

tarantool / tarantool / 16001858497

01 Jul 2025 02:14PM UTC coverage: 87.523% (+0.01%) from 87.513%
16001858497

push

github

sergepetrenko
box: introduce "waiting_for_own_rows" mode

Before this, there was a special mechanism that determined whether an
instance had received all of its rows that it lost during a restart -
to do this, it simply checked that it was currently in the orphan status.
This approach can be called a heuristic, which, unfortunately, does not
work in specific cases.

Instead, it would be much more "correct" for an instance to look at the
maximum lsn among the replicas in the replica set for the component
corresponding to that instance. This will work in all the same cases
where the previous approach worked, but in many more. But it is worth
noting that this approach does not guarantee that one day an instance
will not unexpectedly receive some of its transactions from the past
that have already been overwritten by a new transaction.

Now if an instance realizes that it hasn't received all of its
transactions yet, it goes into "waiting_for_own_rows" mode. This mode
is another ro-reason similar to "orphan" mode. While the instance is in
"waiting_for_own_rows" mode it is read-only.

Closes #10592

@TarantoolBot document
Title: new `box.info.status` - "waiting_for_own_rows"
Product: Tarantool

Root document: https://www.tarantool.io/ru/doc/latest/reference/reference_lua/box_info/status/

The `waiting_for_own_rows` status can be relevant if a node that was once
a master crashed and lost some of its xlogs for some reason (e.g. manually
deleted by the user). In this case after rebooting, `box.info.status` will
be equal to `waiting_for_own_rows`, which means that the instance knows
that some of its transactions were lost from its xlogs and it is waiting
for them to be received via replication. While instance status is
`waiting_for_own_rows` it remains read-only.

(cherry picked from commit 61cb5b5e3)

70156 of 124029 branches covered (56.56%)

56 of 58 new or added lines in 3 files covered. (96.55%)

190 existing lines in 16 files now uncovered.

103184 of 117894 relevant lines covered (87.52%)

2137045.09 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

90.51
/src/box/engine.c


Source Not Available

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