From: Leonid Vasiliev <lvasiliev@tarantool.org> To: v.shpilevoy@tarantool.org, alexander.turenko@tarantool.org Cc: tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH V6 00/10] Extending error functionality Date: Mon, 20 Apr 2020 01:25:02 +0300 [thread overview] Message-ID: <cover.1587334824.git.lvasiliev@tarantool.org> (raw) https://github.com/tarantool/tarantool/issues/4398 https://github.com/tarantool/tarantool/tree/lvasiliev/gh-4398-expose-error-module-5 Changes from previous: - traceback patch has been removed - Vlad patches have been applied - Update old tests and add new - Make iproto errors reuse mp_error module According to https://github.com/tarantool/tarantool/issues/4398 (and after some discussion) we would like box.error to have: * Ability to create new error types * Transparent marshalling through net.box @Changelog Added: Posibility to create errors of a custom user type Transparent marshalling error through net.box(gh-4398) Leonid Vasiliev (5): error: add custom error type error: add session setting for error type marshaling error: update constructors of some errors error: add error MsgPack encoding error: fix iproto error stack overlapped by old error Vladislav Shpilevoy (5): session: add offset to SQL session settings array box: move Lua MP_EXT decoder from tuple.c error: export error_unref() function error: make iproto errors reuse mp_error module iproto: rename IPROTO_ERROR and IPROTO_ERROR_STACK extra/exports | 3 + src/box/CMakeLists.txt | 6 +- src/box/error.cc | 125 ++++++-- src/box/error.h | 51 +++- src/box/iproto_constants.h | 9 +- src/box/lua/call.c | 25 +- src/box/lua/error.cc | 42 ++- src/box/lua/execute.c | 2 +- src/box/lua/init.c | 54 ++++ src/box/lua/net_box.lua | 103 +++++-- src/box/lua/tuple.c | 28 +- src/box/mp_error.cc | 554 +++++++++++++++++++++++++++++++++++ src/box/mp_error.h | 74 +++++ src/box/session.cc | 5 +- src/box/session.h | 5 +- src/box/session_settings.c | 56 ++++ src/box/session_settings.h | 1 + src/box/sql/build.c | 18 +- src/box/sql/func.c | 4 +- src/box/xrow.c | 81 +---- src/lib/core/diag.c | 20 ++ src/lib/core/diag.h | 21 +- src/lib/core/mp_extension_types.h | 1 + src/lua/error.c | 2 +- src/lua/error.h | 1 + src/lua/error.lua | 14 +- src/lua/msgpack.c | 27 +- src/lua/msgpack.h | 8 +- src/lua/utils.c | 15 +- src/lua/utils.h | 7 +- src/serializer_opts.h | 44 +++ test/app/fiber.result | 5 +- test/box-tap/extended_error.test.lua | 150 ++++++++++ test/box/error.result | 65 +++- test/box/error.test.lua | 15 + test/box/iproto.result | 43 +-- test/box/iproto.test.lua | 17 +- test/box/session_settings.result | 3 +- test/engine/func_index.result | 14 +- test/unit/CMakeLists.txt | 2 + test/unit/mp_error.cc | 473 ++++++++++++++++++++++++++++++ test/unit/mp_error.result | 44 +++ test/unit/xrow.cc | 183 +----------- test/unit/xrow.result | 27 +- 44 files changed, 1933 insertions(+), 514 deletions(-) create mode 100644 src/box/mp_error.cc create mode 100644 src/box/mp_error.h create mode 100644 src/serializer_opts.h create mode 100755 test/box-tap/extended_error.test.lua create mode 100644 test/unit/mp_error.cc create mode 100644 test/unit/mp_error.result -- 2.7.4
next reply other threads:[~2020-04-19 22:25 UTC|newest] Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-19 22:25 Leonid Vasiliev [this message] 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 01/10] error: add custom error type Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 02/10] session: add offset to SQL session settings array Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 03/10] error: add session setting for error type marshaling Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 04/10] error: update constructors of some errors Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 05/10] box: move Lua MP_EXT decoder from tuple.c Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 06/10] error: add error MsgPack encoding Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 07/10] error: export error_unref() function Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 08/10] error: make iproto errors reuse mp_error module Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 09/10] iproto: rename IPROTO_ERROR and IPROTO_ERROR_STACK Leonid Vasiliev 2020-04-19 22:25 ` [Tarantool-patches] [PATCH V6 10/10] error: fix iproto error stack overlapped by old error Leonid Vasiliev 2020-04-20 0:26 ` [Tarantool-patches] [PATCH V6 00/10] Extending error functionality Vladislav Shpilevoy 2020-04-20 8:05 ` lvasiliev 2020-04-20 8:05 ` Kirill Yukhin 2020-04-21 19:03 ` Konstantin Osipov 2020-04-22 16:17 ` lvasiliev 2020-04-22 17:23 ` Konstantin Osipov 2020-04-20 8:30 ` Kirill Yukhin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover.1587334824.git.lvasiliev@tarantool.org \ --to=lvasiliev@tarantool.org \ --cc=alexander.turenko@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH V6 00/10] Extending error functionality' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox