|
Ran
|
Jobs
1
|
Files
513
|
Run time
2min
|
Badge
README BADGES
|
push
github
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)
69865 of 117675 branches covered (59.37%)
2 of 2 new or added lines in 1 file covered. (100.0%)
211 existing lines in 9 files now uncovered.104811 of 119606 relevant lines covered (87.63%)
1374278.38 hits per line
| Lines | Coverage | ∆ | File |
|---|---|---|---|
| 184 |
90.94 |
0.14% | src/box/box.cc |
| 8 |
60.42 |
-3.55% | src/lib/core/fio.c |
| 5 |
93.05 |
-0.94% | src/box/xrow_update_field.c |
| 4 |
87.88 |
-0.13% | src/box/vy_run.c |
| 4 |
93.31 |
-1.27% | src/lib/swim/swim_io.c |
| 2 |
84.83 |
0.0% | src/box/xlog.c |
| 2 |
89.34 |
-0.06% | src/box/xrow.c |
| 1 |
92.47 |
0.0% | src/box/vinyl.c |
| 1 |
90.38 |
-1.92% | src/lib/core/trigger.cc |
| ID | Job ID | Ran | Files | Coverage | |
|---|---|---|---|---|---|
| 1 | 19540317584.1 | 513 |
87.63 |
GitHub Action Run |
| Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
|---|