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 098C32AEE4 for ; Tue, 23 Oct 2018 03:32:19 -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 FRpkzP4bpX5b for ; Tue, 23 Oct 2018 03:32:18 -0400 (EDT) Received: from smtp47.i.mail.ru (smtp47.i.mail.ru [94.100.177.107]) (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 BE1D82AED7 for ; Tue, 23 Oct 2018 03:32:18 -0400 (EDT) Received: by smtp47.i.mail.ru with esmtpa (envelope-from ) id 1gErAm-0001Lu-Ne for tarantool-patches@freelists.org; Tue, 23 Oct 2018 10:32:17 +0300 Date: Tue, 23 Oct 2018 10:32:16 +0300 From: Konstantin Osipov Subject: [tarantool-patches] Re: [PATCH 0/8] Get rid of Vinyl's mem_format_with_colmask Message-ID: <20181023073216.GE9849@chai> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: 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: tarantool-patches@freelists.org * Vladimir Davydov [18/10/15 10:15]: > There are two formats for memory statements in Vinyl, vy_lsm::mem_format > and vy_lsm::mem_format_with_colmask. The only difference between them is > that the latter allows to store column mask inside tuples. It is used to > optimize out tautological updates in the write iterator. Turns out that > we can easily do without it as this patch set demonstrates. > > I've always wanted to drop this format because I hate the very idea of > tuple_extra (that's why I dropped upsert format a while ago as well). > However, the reason why I'm doing this now is that it is the only thing > why we need tuple_format_dup. Currently, tuple_format_dup is basically a > memcpy, but once JSON indexes are introduced it's going to become much > more complex than just that so we'd better drop it now. First, I disagree with both premises: - we will need tuple_extra anyway, for capped collections - you can't guarantee that a pretty basic method of an object such as creating a deep copy will never be used in the future, so there is no much point in attacking it now. Yet I am happy to look at the patch trimming the code on the edges so a review follows. -- Konstantin Osipov, Moscow, Russia, +7 903 626 22 32 http://tarantool.io - www.twitter.com/kostja_osipov