Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w0EO0-001jK4-1h for pgsql-hackers@arkaria.postgresql.org; Wed, 11 Mar 2026 07:53:44 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w0ENy-007u9f-0c for pgsql-hackers@arkaria.postgresql.org; Wed, 11 Mar 2026 07:53:42 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w0ENx-007u9V-2k for pgsql-hackers@lists.postgresql.org; Wed, 11 Mar 2026 07:53:42 +0000 Received: from mail-dy1-x1331.google.com ([2607:f8b0:4864:20::1331]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w0ENv-00000001Znc-37Ii for pgsql-hackers@lists.postgresql.org; Wed, 11 Mar 2026 07:53:41 +0000 Received: by mail-dy1-x1331.google.com with SMTP id 5a478bee46e88-2bdcf5970cdso669857eec.0 for ; Wed, 11 Mar 2026 00:53:39 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773215619; cv=none; d=google.com; s=arc-20240605; b=lX/OmgN2qvhnHPVMTBwo+6LiRifWlOVuxSXFgkgTKSCc5SsykbMu/8ybMINS6cZzft oXu0GD4AmM1V08VfyGHp4OnVTqj8NQGeZvfaZqRKrnk46OBKVYpRQ7fwWmKQN2h/+qfp 85XUVNjdRoyxPeSfdXVZohzIURhMH662Mq/dtriraKdfWi8gXlcu/Gs/Q3k8h3gJgXHX 6hnqHiMui4iWbeqJqPMmDpykiPk4UyRFSxEor9K0AkiKjv0iLU9iW33R2c1Ee/RydVyt MEzfGOZKcVeO+zkU+tVMDme6tv86pssh7Aq5K8dw7M1yiAWN1K6dxd25L0cufjw+FLh6 RUTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=qmzip5qIuCT1duo16WMvaON1CVtHc+XF/kDoTLuzyyQ=; fh=cizvBH+GgfHNpA/RBjZXZBBeJFjYOOyBzqDs4sDRAcw=; b=IuKu9/hiRGpbB21l098J2xNyRDwtHZEziljLfwnqjeeAn49WTIwpN+1uLQqUEcJmt/ F/atAlXx1qyIqh72pr3+1u4eDcnwBTuJIf1FQ/L0LS47zFJFKKAxKl48qMtOiz+Yseky nJWOiC+uoU6XRenV6P1nBCR19NTG2m/sAi3ZI498XRqP/UPCNpJ4yd3kFiktYX4BDNBx 2KG0nV96z1H+tYiw6xbtw3eTK234Y/eNrSkVrxiHIbm7L+squ849IU184RNsH42Tzxtd YbsoZU00P4MuDoCh3an5WZqc3Qk/WG1znL3OaOPvmZNZnlGLYsjezIFy/99JPlM4gOy6 T6rw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773215619; x=1773820419; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=qmzip5qIuCT1duo16WMvaON1CVtHc+XF/kDoTLuzyyQ=; b=ic+L6N3K5smZKBlzQBdOZOm+xBjo3dC3uGGQzK0msXjm1vfm00wUNRL+Ic65+h2OpV R3sVXv7JkfL0ZsQfQseqsVOFZS3Sk8TANHRZSpYnZY4ZDcnmGbtaHst+CTABTE5zSsDT FbHKBzsm1BEmFG12hju3a/ioc3sHx9yIm1AOAxK3Kj/ULo09xsaqCuC/8nl7IUy/PTNM 4RaLW0HTXy5gVgx3gJMPh3HLJX3KTTnEyjvf+Vzsh27ZcTyWLDWrEndEjwVsEQvNebZy WiDAeSFKOMozCeK+zMYD4SxZNmdvCm/zuqkK7zfFjwdsIkqfPv1i4wxLsLDEJNcKTTei /nHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773215619; x=1773820419; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=qmzip5qIuCT1duo16WMvaON1CVtHc+XF/kDoTLuzyyQ=; b=tZMKz91viD6tLnho9pudqyAfUz7JmouDDum0VzdB1w8wEDNweVtHIaAc2V15Sz6KSs C2JrDgrnPM7aH21XFdtTFRkGbAC2cPViJ0lkZ3ttVXBlDTX8VMH/Q+/F7WTvJv03RJii f6IV2P38PMArKSDp5TWC2DdIXLL9tSVnba/mF8t5a17uIlKNX4ssoFkv+2fTPes7kXxr OJys4qW1W1S2wUF4vL0WThpJkxld5+Z6du7ETjMtCfTX9af1y8shHAwDm9StskdUj5WH 4/n3PaODyyxNB3Xw+8R+oJRDRtoYrHzBrPwYNrHXXYk2sUDQQiuro2Twes7JsjHMyxfw U5tA== X-Forwarded-Encrypted: i=1; AJvYcCVHH7vqGx5Mmn+Lckm0nAd+pZTRfueI8wf4JmDaxbUgdOR881C5dK4/K7Hxky1iE9lSDk+48EjWOTS7nPRj@lists.postgresql.org X-Gm-Message-State: AOJu0YzGoIsyb2b0R43P/pPD+0QotihD11V0IrXxmuc0BdWC+oo12nef lagemZ9xWOznJIeKS6iqQqE9UGEjWXyrOrbx64F4xKxfn441GPn74O31NV/7HyfQPQh9h7ODfFY EqPdxhB16/irCaEhIqTAGyRCDi1czegg= X-Gm-Gg: ATEYQzyhZcJFh14pLidsiHv8MAGJcGLCr9uemQvUul2WMWni7703vI3hV4XJhVtPPSt /FiY0qXUuSlcdCB05RzoBQEq3MG1MZc6ngWtDce0chG2oVq3dXaBuVIz222fWvRIwjvAFCoZJyV a0a4eZUG6dL9WX/U6nVbTPTydaYYX/C/lcKvX/nIYQCQgJXv0HjATK8XdnxbrtxYNIp8a8Kg83W P/TSs9c6sadVZxzeFm1PIFFdVoWO+Wg2GoGVlNZl1iz/vhlwTAeIIBH8kwYj6NtpbIi6X0RroCP uQj5mf0= X-Received: by 2002:a05:7300:dc88:b0:2be:617:1f3b with SMTP id 5a478bee46e88-2be7a0aa471mr2562164eec.5.1773215618804; Wed, 11 Mar 2026 00:53:38 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Nazir Bilal Yavuz Date: Wed, 11 Mar 2026 10:53:27 +0300 X-Gm-Features: AaiRm52blFqtRDrK-tnaBSv8YIh43TgkAWRMN8fqZxIPJJ_6P126ITR2bcVurr8 Message-ID: Subject: Re: Streamify more code paths To: Xuneng Zhou Cc: Michael Paquier , pgsql-hackers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi, On Tue, 10 Mar 2026 at 16:23, Xuneng Zhou wrote: > > Another code path that showed significant performance improvement is > pgstatindex [1]. I've incorporated the test into the script too. Here > are the results from my testing: > > method=3Dworker io-workers=3D12 > pgstatindex_large base=3D 233.8ms patch=3D 54.1ms 4.32x > ( 76.8%) (reads=3D27460=E2=86=921757, io_time=3D213.94=E2=86=926.31ms) > > method=3Dio_uring > pgstatindex_large base=3D 224.2ms patch=3D 56.4ms 3.98x > ( 74.9%) (reads=3D27460=E2=86=921757, io_time=3D204.41=E2=86=924.88ms) I didn't run the benchmark yet but here is a small suggestion for the pgstatindex patch: + p.current_blocknum =3D BTREE_METAPAGE + 1; + p.last_exclusive =3D nblocks; for (blkno =3D 1; blkno < nblocks; blkno++) ... + p.current_blocknum =3D HASH_METAPAGE + 1; + p.last_exclusive =3D nblocks; for (blkno =3D 1; blkno < nblocks; blkno++) Could you move 'BTREE_METAPAGE + 1' and 'HASH_METAPAGE + 1' into variables and then set p.current_blocknum and blkno using those variables? p.current_blocknum and blkno should have the same initial values, this change makes code less error prone and easier to read in my opinion. Other than the comment above, LGTM. --=20 Regards, Nazir Bilal Yavuz Microsoft