vinyl: fail aborted transactions early
We abort transactions when switching to read-only mode, building a new index, or reverting a statement after a failed WAL write. It's no use to allow an aborted transaction to proceed as usual until commit - we should fail it as early as we can to avoid wasting resources. Currently, we do it in a rather abrupt way - by an assertion :-) This patch makes any DML/DQL operation fail gracefully instead. Closes #4070
Showing
- src/box/vinyl.c 12 additions, 4 deletionssrc/box/vinyl.c
- src/box/vy_tx.c 31 additions, 9 deletionssrc/box/vy_tx.c
- src/box/vy_tx.h 2 additions, 2 deletionssrc/box/vy_tx.h
- test/vinyl/errinj_ddl.result 45 additions, 0 deletionstest/vinyl/errinj_ddl.result
- test/vinyl/errinj_ddl.test.lua 20 additions, 0 deletionstest/vinyl/errinj_ddl.test.lua
- test/vinyl/errinj_tx.result 29 additions, 0 deletionstest/vinyl/errinj_tx.result
- test/vinyl/errinj_tx.test.lua 10 additions, 0 deletionstest/vinyl/errinj_tx.test.lua
- test/vinyl/misc.result 20 additions, 0 deletionstest/vinyl/misc.result
- test/vinyl/misc.test.lua 11 additions, 0 deletionstest/vinyl/misc.test.lua
Loading
Please register or sign in to comment