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

tarantool / tarantool / 19538920465

20 Nov 2025 01:42PM UTC coverage: 87.63% (-0.02%) from 87.648%
19538920465

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>

70137 of 118117 branches covered (59.38%)

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

225 existing lines in 16 files now uncovered.

105294 of 120157 relevant lines covered (87.63%)

1349248.43 hits per line

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

88.96
/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