From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: Date: Thu, 25 Apr 2019 14:46:59 +0300 From: Konstantin Osipov Subject: Re: [tarantool-patches] [PATCH v3 7/7] Add merger for tuple streams (Lua part) Message-ID: <20190425114659.GN29257@atlas> References: <9af4b8f1311537ef696d71a1b09bc1721bde8ef0.1554906327.git.alexander.turenko@tarantool.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <9af4b8f1311537ef696d71a1b09bc1721bde8ef0.1554906327.git.alexander.turenko@tarantool.org> To: tarantool-patches@freelists.org Cc: Vladimir Davydov , Alexander Turenko List-ID: * Alexander Turenko [19/04/10 18:23]: > The api is generally LGTM, one comment below: > A merger is a special kind of a source, which is created from a key_def > object and a set of sources. It performs a kind of the merge sort: > chooses a source with a minimal / maximal tuple on each step, consumes > a tuple from this source and repeats. The API to create a merger is the > following: > > ```lua > local ctx = merger.context.new(key_def.new(<...>)) > local sources = {<...>} > local merger_inst = merger.new(ctx, sources, { Why do you need a separate object used only to construct a merger? Why not pass all parameters into merger.new? -- Konstantin Osipov, Moscow, Russia, +7 903 626 22 32 http://tarantool.io - www.twitter.com/kostja_osipov