From patchwork Tue Feb 6 06:35:55 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Patrick Steinhardt X-Patchwork-Id: 13546714 Received: from wout4-smtp.messagingengine.com (wout4-smtp.messagingengine.com [64.147.123.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 538EC127B6E for ; Tue, 6 Feb 2024 06:36:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=64.147.123.20 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707201361; cv=none; b=APPjrKlM7mtJr6xyUUx09guxrUI45L9IsB/ejcZCP8cu5wefxwKC2hvbZyndPgK4wyH2TB3ggIEtM86rhV2s6iGMUrYhzP/+EbpXG93eHNAWtWZC6020sY4L+h8pTTP6BYgl64WZYaepTMdt77mrRjWRfhfY44EWtpCSZhaWnJk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707201361; c=relaxed/simple; bh=8K2UDYZ1S+uKVhF14x80Z179r8eyQFEezvAtty+ZPxI=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=a7Mcn0NV/cVZwl3ewsqD7KyK7QZhW6bEesmcHCdnki3LRCycKVz49uBrdtRlU8VE/9mo9//jiSkbmxD2fgcMdZOxUVNTwngVHfDxenpMAtA5DrxS20SqPurbCVXrhAM9mcVESmNSk2C9JnYMSIZd2y764UBGOvl4ETxvogabZLs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pks.im; spf=pass smtp.mailfrom=pks.im; dkim=pass (2048-bit key) header.d=pks.im header.i=@pks.im header.b=AY0tmTdZ; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=nN22M4BE; arc=none smtp.client-ip=64.147.123.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=pks.im Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pks.im Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=pks.im header.i=@pks.im header.b="AY0tmTdZ"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="nN22M4BE" Received: from compute7.internal (compute7.nyi.internal [10.202.2.48]) by mailout.west.internal (Postfix) with ESMTP id 4A7FF3200AAA; Tue, 6 Feb 2024 01:35:59 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute7.internal (MEProxy); Tue, 06 Feb 2024 01:35:59 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pks.im; h=cc:cc :content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm3; t=1707201358; x=1707287758; bh=UlFQQ4rNOj VH/J9GTkfpZo5/BAPIrVJII/b1rWxmosU=; b=AY0tmTdZqq06iLNxSv3yYjO1Mv wimr6ajcVf0JbgKz7N/ejwdFUjx/JTrWP+j+fWHgXKJg6pB2cL7KoGERRCq0opDD i1CRCm6A8sbebh/xR8WWhgCzhxuSNxmOLSCBKxeeHcQLct9sxwaLDwG4IZe3ZFVg MsyKSDqfgn3N0rA4ys8M2ggHnTWW7rv7ikwbq/UuIdYZGEsJ2l79npISJEfh3CU0 dkqKIisEsml5cYKLPH/5AMMqYIusbMb0YP5XO1i0ElY5APTihYEna/VIGUphewNk CgYIpuysHt6kWHsho8DYcpgWIlnmczzFD0kDfezj0Jeekgm9+GAWO6XmDhTA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; t=1707201358; x=1707287758; bh=UlFQQ4rNOjVH/J9GTkfpZo5/BAPI rVJII/b1rWxmosU=; b=nN22M4BEhzSuZV+Sdm6JBqcVk/9TAhS/bjBFcme2uqSC +U7mxkwpe99EaA4YMhWaSdPKnL70nRAL3AAcBosDSurUXqAlSEPO6hytbXuAGRXb A+WVgMUtkupsNURhR7LQAM5BZ9pmtA8z/ZSjXqX9HPZyU3V/LVcya24saWnKkwar SKYoTCZcCYVI4ng0SwY07rdc1t47t42vD2Sm9mEchKquH5YxRCOHYuXlTJ69Fh9u V4kJg4I4NZdWgTRrhQNjGUdbzgeXUrgXagWCa9ObJPF5H5COLfmf6l4kMKAyQesm nu9wPKxgyMB2GC5WWpOOQlLcp+oclZf3E9/mJEQyHg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrfedvvddgleelucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtvdenucfhrhhomheprfgrthhr ihgtkhcuufhtvghinhhhrghrughtuceophhssehpkhhsrdhimheqnecuggftrfgrthhtvg hrnhepueektdevtdffveeljeetgfehheeigeekleduvdeffeeghefgledttdehjeelffet necuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepphhsse hpkhhsrdhimh X-ME-Proxy: Feedback-ID: i197146af:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 6 Feb 2024 01:35:57 -0500 (EST) Received: by vm-mail (OpenSMTPD) with ESMTPSA id e1a299bb (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); Tue, 6 Feb 2024 06:32:27 +0000 (UTC) Date: Tue, 6 Feb 2024 07:35:55 +0100 From: Patrick Steinhardt To: git@vger.kernel.org Cc: Eric Sunshine , Junio C Hamano , Toon Claes , Karthik Nayak Subject: [PATCH v3 8/9] reftable/merged: refactor initialization of iterators Message-ID: <8c35968ce82666e2fe0c055699e7bd1ac4de0de8.1707200355.git.ps@pks.im> References: Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Refactor the initialization of the merged iterator to fit our code style better. This refactoring prepares the code for a refactoring of how records are being initialized. Signed-off-by: Patrick Steinhardt --- reftable/merged.c | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/reftable/merged.c b/reftable/merged.c index 0abcda26e8..0e60e2a39b 100644 --- a/reftable/merged.c +++ b/reftable/merged.c @@ -19,24 +19,23 @@ license that can be found in the LICENSE file or at static int merged_iter_init(struct merged_iter *mi) { - int i = 0; - for (i = 0; i < mi->stack_len; i++) { - struct reftable_record rec = reftable_new_record(mi->typ); - int err = iterator_next(&mi->stack[i], &rec); - if (err < 0) { + for (size_t i = 0; i < mi->stack_len; i++) { + struct pq_entry e = { + .rec = reftable_new_record(mi->typ), + .index = i, + }; + int err; + + err = iterator_next(&mi->stack[i], &e.rec); + if (err < 0) return err; - } - if (err > 0) { reftable_iterator_destroy(&mi->stack[i]); - reftable_record_release(&rec); - } else { - struct pq_entry e = { - .rec = rec, - .index = i, - }; - merged_iter_pqueue_add(&mi->pq, &e); + reftable_record_release(&e.rec); + continue; } + + merged_iter_pqueue_add(&mi->pq, &e); } return 0;