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 55A7D26378 for ; Thu, 14 Jun 2018 13:33:44 -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 qyLDrd2z57jC for ; Thu, 14 Jun 2018 13:33:44 -0400 (EDT) Received: from smtp15.mail.ru (smtp15.mail.ru [94.100.176.133]) (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 13B2626348 for ; Thu, 14 Jun 2018 13:33:44 -0400 (EDT) From: Vladislav Shpilevoy Subject: [tarantool-patches] Re: [PATCH 1/2] fiber: remove fiber local storage References: <20180613211150.GH10632@chai> Message-ID: Date: Thu, 14 Jun 2018 20:33:42 +0300 MIME-Version: 1.0 In-Reply-To: <20180613211150.GH10632@chai> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit 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: Konstantin Osipov Cc: tarantool-patches@freelists.org Hello. Thanks for the review! On 14/06/2018 00:11, Konstantin Osipov wrote: > * Vladislav Shpilevoy [18/06/09 22:33]: >> Replace it with more specific structures and pointers in order to >> prepare to add `net` storage. >> >> This allows to make the code working with fiber storage simpler, >> remove useless wrappers and casts, and in the next patch - remove >> broken session.sync and add fiber sync. > > Please write a comment stating that under no circumstances fiber.h > is allowed to include application-specific headers, one only is allowed to add opaque > pointers to the storage struct. I actually thought that you're > going to make it more general, adopting a concept similar to Lua > stack. Anyway, the simpler the better, we can make it more general > when we need it, it's OK to push. I have added the comment to the code: @@ -331,6 +331,11 @@ struct fiber_attr { void fiber_attr_create(struct fiber_attr *fiber_attr); +/** + * Under no circumstances this header file is allowed to include + * application-specific headers like session.h or txn.h. One only + * is allowed to announce a struct and add opaque pointer to it. + */ struct session; struct txn; struct credentials; And to the commit message. The patchset is pushed. >> --- >> src/box/session.cc | 4 +-- >> src/box/session.h | 14 ++++------ >> src/box/txn.c | 2 +- >> src/box/txn.h | 2 +- >> src/fiber.c | 9 ++---- >> src/fiber.h | 80 +++++++++++++++++++---------------------------------- >> src/fiber_channel.c | 31 ++++++--------------- >> src/lua/fiber.c | 19 ++++++------- >