From: Leonid Vasiliev <lvasiliev@tarantool.org> To: alexander.turenko@tarantool.org Cc: tarantool-patches@dev.tarantool.org Subject: [Tarantool-patches] [PATCH 0/6] Extending error functionality Date: Tue, 24 Mar 2020 15:45:58 +0300 [thread overview] Message-ID: <cover.1585053742.git.lvasiliev@tarantool.org> (raw) https://github.com/tarantool/tarantool/issues/4398 https://github.com/tarantool/tarantool/tree/lvasiliev/gh-4398-expose-error-module-4 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 * Lua backtrace * payload (not implemented in patch) Leonid Vasiliev (6): error: Add a Lua backtrace to error error: Add the custom error type iproto: Add negotiation phase error: Add extended error transfer format error: Add test for extended error error: Transmit an error through IPROTO_OK as object src/box/errcode.h | 1 + src/box/error.cc | 56 +++++++++ src/box/error.h | 32 ++++++ src/box/execute.c | 1 + src/box/iproto.cc | 40 ++++++- src/box/iproto_constants.h | 25 +++++ src/box/lua/call.c | 29 +++-- src/box/lua/error.cc | 126 +++++++++++++++++---- src/box/lua/execute.c | 2 +- src/box/lua/net_box.c | 34 ++++++ src/box/lua/net_box.lua | 103 +++++++++++++++-- src/box/lua/tuple.c | 12 +- src/box/session.cc | 16 +++ src/box/session.h | 20 ++++ src/box/sql/func.c | 4 +- src/box/xrow.c | 160 ++++++++++++++++++++++++++ src/box/xrow.h | 48 +++++++- src/lib/core/diag.c | 20 ++++ src/lib/core/diag.h | 5 + src/lib/core/exception.cc | 1 + src/lib/core/mp_extension_types.h | 4 +- src/lib/core/port.h | 4 +- src/lua/error.c | 45 +++++++- src/lua/error.h | 6 +- src/lua/error.lua | 65 ++++++++--- src/lua/msgpack.c | 26 +++-- src/lua/msgpack.h | 8 +- src/lua/utils.c | 28 ++++- src/lua/utils.h | 27 ++++- test/app/fiber.result | 35 ++++-- test/app/fiber.test.lua | 11 +- test/box-tap/extended_error.test.lua | 212 +++++++++++++++++++++++++++++++++++ test/box/misc.result | 51 +++++++-- test/box/misc.test.lua | 19 +++- 34 files changed, 1161 insertions(+), 115 deletions(-) create mode 100755 test/box-tap/extended_error.test.lua -- 2.7.4
next reply other threads:[~2020-03-24 12:46 UTC|newest] Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-03-24 12:45 Leonid Vasiliev [this message] 2020-03-24 12:45 ` [Tarantool-patches] [PATCH 1/6] error: Add a Lua backtrace to error Leonid Vasiliev 2020-04-05 22:14 ` Vladislav Shpilevoy 2020-04-08 13:56 ` Igor Munkin 2020-03-24 12:46 ` [Tarantool-patches] [PATCH 2/6] error: Add the custom error type Leonid Vasiliev 2020-04-05 22:14 ` Vladislav Shpilevoy 2020-03-24 12:46 ` [Tarantool-patches] [PATCH 3/6] iproto: Add negotiation phase Leonid Vasiliev 2020-03-24 20:02 ` Konstantin Osipov 2020-03-25 7:35 ` lvasiliev 2020-03-25 8:42 ` Konstantin Osipov 2020-03-25 10:56 ` Eugene Leonovich 2020-03-25 11:13 ` Konstantin Osipov 2020-03-26 11:37 ` lvasiliev 2020-03-26 11:18 ` lvasiliev 2020-03-26 12:16 ` Konstantin Osipov 2020-03-26 12:54 ` Kirill Yukhin 2020-03-26 13:19 ` Konstantin Osipov 2020-03-26 13:31 ` Konstantin Osipov 2020-03-26 21:13 ` Alexander Turenko 2020-03-26 21:53 ` Alexander Turenko 2020-03-27 8:28 ` Konstantin Osipov 2020-03-26 23:35 ` Alexander Turenko 2020-03-27 8:39 ` Konstantin Osipov 2020-03-24 12:46 ` [Tarantool-patches] [PATCH 4/6] error: Add extended error transfer format Leonid Vasiliev 2020-03-24 12:46 ` [Tarantool-patches] [PATCH 5/6] error: Add test for extended error Leonid Vasiliev 2020-03-24 12:46 ` [Tarantool-patches] [PATCH 6/6] error: Transmit an error through IPROTO_OK as object Leonid Vasiliev 2020-03-27 23:11 ` [Tarantool-patches] [PATCH 0/6] Extending error functionality lvasiliev 2020-03-28 13:54 ` Alexander Turenko 2020-03-30 10:48 ` lvasiliev 2020-04-01 15:35 ` Alexander Turenko
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.1585053742.git.lvasiliev@tarantool.org \ --to=lvasiliev@tarantool.org \ --cc=alexander.turenko@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH 0/6] 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