From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp3.mail.ru (smtp3.mail.ru [94.100.179.58]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 809C2469710 for ; Tue, 19 May 2020 22:10:07 +0300 (MSK) Date: Tue, 19 May 2020 19:10:06 +0000 From: Nikita Pettik Message-ID: <20200519191006.GB13813@tarantool.org> References: <670c3876e58a7cfa14d45db1dc074a10dd034759.1586808463.git.korablev@tarantool.org> <20200413221229.GA3462@atlas> <20200514021155.GB18509@tarantool.org> <20200514065608.GA12581@atlas> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20200514065608.GA12581@atlas> Subject: Re: [Tarantool-patches] [PATCH 2/2] vinyl: skip invalid upserts during squash List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Konstantin Osipov , tarantool-patches@dev.tarantool.org, v.shpilevoy@tarantool.org On 14 May 09:56, Konstantin Osipov wrote: > * Nikita Pettik [20/05/14 09:50]: > > On 14 Apr 01:12, Konstantin Osipov wrote: > > > * Nikita Pettik [20/04/14 00:57]: > > > > Finally, let's double check there are no issues with the used > > > format - can it become obsolete by the time it's used, e.g. if > > > there is an online/non-blocking schema change that happened in tx > > > thread (compaction is running in the write thread)? > > > > Upserts are supported only by primary index. Meanwhile vinyl does > > not support altering primary index of non-empty space. Am I missing > > something? > > I mean the space format object itself. Squashing is happening in a > different thread, the > > Seems like you've cut sentence. Could you please suggest exact test scenario? We already have similar test in vinyl/errinj.test.lua: ... errinj.set("ERRINJ_VY_SQUASH_TIMEOUT", 0.050) s = box.schema.space.create('test', {engine='vinyl'}) _ = s:create_index('pk') s:insert{0, 0} box.snapshot() for i=1,256 do s:upsert({0, 0}, {{'+', 2, 1}}) end box.snapshot() -- in-memory tree is gone fiber.sleep(0.05) s:select() > -- > Konstantin Osipov, Moscow, Russia