txn: speed up and streamline the API
Speed up txn construction and make txn object smaller: * initialize triggers in txn on first use * remove unnecessary members of txn * replace rlist with slist (double linke list with single linke list) for statement list; implement a nicer single linked list for that purpose, and cover it with tests; Streamline engine API: * replace beginStatement with begin(), engines have no need to be alerted on each statement * don't commit statement transaction inside the engine, do it once outside engine API * TupleGuard -> TupleRef, implement TupleRefNil
Showing
- src/box/alter.cc 34 additions, 32 deletionssrc/box/alter.cc
- src/box/box.cc 11 additions, 1 deletionsrc/box/box.cc
- src/box/engine.cc 8 additions, 3 deletionssrc/box/engine.cc
- src/box/engine.h 5 additions, 8 deletionssrc/box/engine.h
- src/box/lua/space.cc 1 addition, 1 deletionsrc/box/lua/space.cc
- src/box/memtx_engine.cc 19 additions, 47 deletionssrc/box/memtx_engine.cc
- src/box/memtx_engine.h 2 additions, 2 deletionssrc/box/memtx_engine.h
- src/box/sophia_engine.cc 22 additions, 22 deletionssrc/box/sophia_engine.cc
- src/box/sophia_engine.h 2 additions, 2 deletionssrc/box/sophia_engine.h
- src/box/tuple.h 16 additions, 5 deletionssrc/box/tuple.h
- src/box/txn.cc 42 additions, 46 deletionssrc/box/txn.cc
- src/box/txn.h 58 additions, 24 deletionssrc/box/txn.h
- src/lib/salad/stailq.h 205 additions, 0 deletionssrc/lib/salad/stailq.h
- test/unit/CMakeLists.txt 1 addition, 0 deletionstest/unit/CMakeLists.txt
- test/unit/stailq.c 74 additions, 0 deletionstest/unit/stailq.c
- test/unit/stailq.result 30 additions, 0 deletionstest/unit/stailq.result
Loading
Please register or sign in to comment