qsync: fix txn fiber hang on fencing at CONFIRM
If the limbo was fenced during CONFIRM WAL write, then the confirmed txn was committed just fine, but its author-fiber kept hanging. This is because when it was woken up, it checked if the limbo is frozen and went to infinite waiting before actually checking if the txn is completed. The fiber would unfreeze if would be woken up explicitly as a workaround. The fix is simple - change the checks order. Part of #7253 NO_DOC=bugfix (cherry picked from commit ec628100)
Showing
- changelogs/unreleased/gh-7253-fiber-hang-on-fencing.md 5 additions, 0 deletionschangelogs/unreleased/gh-7253-fiber-hang-on-fencing.md
- src/box/txn_limbo.c 2 additions, 2 deletionssrc/box/txn_limbo.c
- test/replication-luatest/gh_7253_election_long_wal_write_test.lua 143 additions, 0 deletions...lication-luatest/gh_7253_election_long_wal_write_test.lua
- test/replication-luatest/suite.ini 1 addition, 1 deletiontest/replication-luatest/suite.ini
Loading
Please register or sign in to comment