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

tarantool / tarantool / 19540321773

20 Nov 2025 02:30PM UTC coverage: 87.57% (-0.007%) from 87.577%
19540321773

push

github

sergepetrenko
limbo: make txn_limbo_confirm nop during fencing

Before this patch a synchronous transaction could be confirmed when user
lowered `replication_synchro_quorum` while limbo is in the frozen state.
It could lead to the next situation:
1) server1 loses a quorum of connections and its limbo goes into the
   frozen state.
2) The new elected master rollbacks a non-confirmed synchronous
   transaction.
3) On the old master we lower `replication_synchro_quorum` to 1. Our
   synchronous transaction is confirmed because our node can collect
   sufficient number of acks.
As a result, we have inconsistent state in the replicaset because on the
old master we have a confirmed transaction but on the new master we have
a rolledbacked transaction.

Now, we fix this issue by returning from the `txn_limbo_confirm` when
`txn_limbo_is_frozen` is true. It can help us to make the
`txn_limbo_confirm` - nop and not confirm synchronous transactions.

Needed for tarantool#11574

NO_DOC=bugfix
NO_CHANGELOG=<not released>

(cherry picked from commit 51999396d)

69166 of 116565 branches covered (59.34%)

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

68 existing lines in 14 files now uncovered.

103985 of 118745 relevant lines covered (87.57%)

1372849.78 hits per line

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

94.22
/src/lua/fiber.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