From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf1-f66.google.com (mail-lf1-f66.google.com [209.85.167.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id EAFC6469710 for ; Mon, 25 May 2020 23:42:05 +0300 (MSK) Received: by mail-lf1-f66.google.com with SMTP id e125so11122137lfd.1 for ; Mon, 25 May 2020 13:42:05 -0700 (PDT) Date: Mon, 25 May 2020 23:42:03 +0300 From: Konstantin Osipov Message-ID: <20200525204203.GA15379@atlas> References: <20200525163409.GC4272@atlas> <20200525183554.GF2464@grain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200525183554.GF2464@grain> Subject: Re: [Tarantool-patches] [PATCH v2 2/2] wal: reorder tx rows so that a tx ends on a global row List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Cyrill Gorcunov Cc: tarantool-patches@dev.tarantool.org, v.shpilevoy@tarantool.org * Cyrill Gorcunov [20/05/25 21:38]: > On Mon, May 25, 2020 at 07:34:09PM +0300, Konstantin Osipov wrote: > > * Serge Petrenko [20/05/25 14:00]: > > > > While I think it's an acceptable strategy for a bugfix, I still > > think relaying has to be fixed to be transactional, the current > > xstream api is a huge legacy we're stuck with since Tarantool 1.3! > > > > It saddens me a great deal the relay patch may be shuffled into > > the desk once the problem is not as urgent. > > Kostya, could you please describe xstream api here, so I would > file a bug and will assign it to myself/someone and we won't > forget. (yes, I remember you've said me about rework in f2f > conversation but i might be missing some details so please > write it here, in email) The simplest change would be to switch from returning xrow * to returning xrow **, so that xstream can return an entire transaction. Alternatively, applier is already using a stailq of objects called applier_tx_row, these are nothing but stailq_entry object, this data structure could be reused in xsteam api, so that it returns a stailq, similar to applier_read_tx. -- Konstantin Osipov, Moscow, Russia