[tarantool-patches] [PATCH v7 0/6] sql: remove box.sql.execute
imeevma at tarantool.org
imeevma at tarantool.org
Tue Jan 15 19:10:03 MSK 2019
The goal of this patch-set is to make functions from execute.c
the only way to execute SQL statements. This goal includes
similar output for executed SQL statements no matter how they
were executed: through net.box or through box.
This is the seventh version of patch-set. It is not complete. It
still has no last part, which is replacing box.sql.execute by
box.execute, because it will lead to massive test editing.
For now this patch-set blocked by #3832. Small temporary fix added
to temporary patch of patch-set.
https://github.com/tarantool/tarantool/issues/3505
https://github.com/tarantool/tarantool/tree/imeevma/gh-3505-no-sql-execute
General information of difference from previous version of
patch-set:
- Added new commit that removes lua_error() from luaL_tofield().
- Added new and fixed old comments and descriptions.
- Fixed some bugs.
- Refactoring.
A bit about patches of the patch-set:
Patch 1 removes lua_error() from luaL_tofield().
Patch 2 moves map creation from xrow functions to
sql_response_dump(). It allows us to use sql_response_dump() as
method of port.
Patch 3 creates port_sql and two its methods: dump_msgpack() and
destroy().
Patch 4 creates dump_lua() method for port_sql.
Patch 5 adds binding to new_execute().
Patch 6 is temporary patch. It was created to check that
new_execute() is able to pass through tests created for execute().
v1:
https://www.freelists.org/post/tarantool-patches/PATCH-v1-0010-sql-remove-boxsqlexecute
v2:
https://www.freelists.org/post/tarantool-patches/PATCH-v2-07-Remove-boxsqlexecute
v3:
https://www.freelists.org/post/tarantool-patches/PATCH-v3-07-Remove-boxsqlexecute
v4:
https://www.freelists.org/post/tarantool-patches/PATCH-v4-05-Remove-boxsqlexecute
v5:
https://www.freelists.org/post/tarantool-patches/PATCH-v5-05-sql-remove-boxsqlexecute
v6:
https://www.freelists.org/post/tarantool-patches/PATCH-v6-05-sql-remove-boxsqlexecute
Mergen Imeev (6):
lua: remove exceptions from function luaL_tofield()
iproto: move map creation to sql_response_dump()
iproto: create port_sql
lua: create method dump_lua for port_sql
lua: parameter binding for new execute()
sql: check new box.sql.execute()
src/box/execute.c | 493 +++++++++++++++++++++++++++++++++++++++++--------
src/box/execute.h | 63 ++-----
src/box/iproto.cc | 16 +-
src/box/lua/call.c | 9 +-
src/box/lua/schema.lua | 23 +++
src/box/lua/sql.c | 36 +++-
src/box/lua/tuple.c | 3 +-
src/box/port.h | 1 -
src/box/xrow.c | 8 +-
src/box/xrow.h | 9 +-
src/lua/msgpack.c | 12 +-
src/lua/utils.c | 105 ++++++-----
src/lua/utils.h | 8 +-
13 files changed, 591 insertions(+), 195 deletions(-)
--
2.7.4
More information about the Tarantool-patches
mailing list