console: rollback txn on eval error if begin was in expr
The issue is if in binary remote console a error is thrown in expression like "box.begin() error('something') box.commit()" then it is overwritten by iproto check for active transactions at the end of eval. The solution is to rollback active transaction in this case in console code before iproto check. Let's also assert in tests a behaviour that after successful transaction begin it stays active in next evaluations (successful or not) until explicit rollback. Closes #7288 NO_DOC=minor change
Showing
- changelogs/unreleased/gh-7288-txn-and-eval-error.md 4 additions, 0 deletionschangelogs/unreleased/gh-7288-txn-and-eval-error.md
- src/box/lua/console.lua 23 additions, 1 deletionsrc/box/lua/console.lua
- test/app-luatest/gh_7288_console_flavours_vs_txn_test.lua 184 additions, 0 deletionstest/app-luatest/gh_7288_console_flavours_vs_txn_test.lua
Loading
Please register or sign in to comment