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 B3C7925F41 for ; Thu, 7 Jun 2018 23:51:05 -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 R3b6GxRMCGDU for ; Thu, 7 Jun 2018 23:51:05 -0400 (EDT) Received: from smtp51.i.mail.ru (smtp51.i.mail.ru [94.100.177.111]) (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 6D01325F33 for ; Thu, 7 Jun 2018 23:51:05 -0400 (EDT) Date: Fri, 8 Jun 2018 06:51:02 +0300 From: Konstantin Osipov Subject: [tarantool-patches] Re: [PATCH v3 3/4] session: introduce binary box.session.push Message-ID: <20180608035102.GE6866@chai> References: <6952c89275280b57a7d94b759234488b1a1cff20.1527886471.git.v.shpilevoy@tarantool.org> <20180607125352.GA30262@chai> <3c142fdd-fb7b-bd60-4615-f9152fd8b8c9@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3c142fdd-fb7b-bd60-4615-f9152fd8b8c9@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 * Vladislav Shpilevoy [18/06/07 23:59]: > > 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 > > I have removed assertions and left the test be output checking. > Push test does many table members checking, and it is simpler to > just output the tables. > > Assertions were in a single place were a table contains 400 members. > But ok, now I did it like in vinyl/select_consistency test. > > > - 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 > > I had investigated it before you have recommended and before I > started the patch. But ok, I have investigated it again, and > wrote the simple patch, that shows upvalues to be unusable as > sync storage. See the diff below and the explanation under the diff. Vlad, I need to push the patch first and investigate this problem second. I understand somebody wanted to not bother with the sync in the ticket, but it is not a priority for me. Please revert fiber_sync() changes asap and update the tests, so that I can push the patch. We can talk about fixing box.session.sync() later. My problem with the patch is that you make a partial fix (box.session.sync() is still broken) and use fiber local storage for something that has little to do with a fiber. I'm sure there are acceptable ways to fix box.session.sync(). I'll be happy to discuss them once we've done with the current patch. -- Konstantin Osipov, Moscow, Russia, +7 903 626 22 32 http://tarantool.io - www.twitter.com/kostja_osipov