From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id 5FBC924BA5 for ; Thu, 7 Jun 2018 08:53:56 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kZHlcoo4Q4GV for ; Thu, 7 Jun 2018 08:53:56 -0400 (EDT) Received: from smtp35.i.mail.ru (smtp35.i.mail.ru [94.100.177.95]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id B50AE24AF2 for ; Thu, 7 Jun 2018 08:53:55 -0400 (EDT) Date: Thu, 7 Jun 2018 15:53:52 +0300 From: Konstantin Osipov Subject: [tarantool-patches] Re: [PATCH v3 3/4] session: introduce binary box.session.push Message-ID: <20180607125352.GA30262@chai> References: <6952c89275280b57a7d94b759234488b1a1cff20.1527886471.git.v.shpilevoy@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6952c89275280b57a7d94b759234488b1a1cff20.1527886471.git.v.shpilevoy@tarantool.org> Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-subscribe: List-owner: List-post: List-archive: To: Vladislav Shpilevoy Cc: tarantool-patches@freelists.org Hi, My code review for this patch is on branch box-session-push-kostja. What still needs to be done: - convert push.test to box-tap - add a second argument to box.session.push() - which is reply sync, and test that it works. If the sync is not provided, session sync should be used. There is follow up work, once this part of the patch is done: - investigate whether we can use kharon to get rid discard_input messages - think about alternatives which would preserve sync in a Lua routine. Looks like using an upvalue would do https://www.lua.org/pil/27.3.3.html As a side note, this patch could well be split into 3: - tx_fiber_init() refactoring - kharon, and push implementation - fiber_sync() and connection-multiplexing-safe implementation of box.session.sync() Thanks, * Vladislav Shpilevoy [18/06/02 02:09]: > Closes #2677 > --- > src/box/iproto.cc | 241 +++++++++++++++++++++++++++++++-------- > src/box/iproto_constants.h | 3 + > src/box/lua/net_box.lua | 104 ++++++++++++----- > src/box/xrow.c | 12 ++ > src/box/xrow.h | 12 ++ > src/fiber.h | 14 ++- > test/box/net.box.result | 8 +- > test/box/net.box.test.lua | 8 +- > test/box/push.result | 274 ++++++++++++++++++++++++++++++++++++++++++--- > test/box/push.test.lua | 148 ++++++++++++++++++++++-- > 10 files changed, 719 insertions(+), 105 deletions(-) > -- Konstantin Osipov, Moscow, Russia, +7 903 626 22 32 http://tarantool.io - www.twitter.com/kostja_osipov