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 1wVLIu-001tWv-23 for pgsql-hackers@arkaria.postgresql.org; Fri, 05 Jun 2026 03:33:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wVLIs-009nPL-0s for pgsql-hackers@arkaria.postgresql.org; Fri, 05 Jun 2026 03:33:02 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wVLIr-009nPD-1L for pgsql-hackers@lists.postgresql.org; Fri, 05 Jun 2026 03:33:01 +0000 Received: from fhigh-b2-smtp.messagingengine.com ([202.12.124.153]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wVLIo-00000001LrS-1H9X for pgsql-hackers@lists.postgresql.org; Fri, 05 Jun 2026 03:33:01 +0000 Received: from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43]) by mailfhigh.stl.internal (Postfix) with ESMTP id 3ECDA7A0115; Thu, 4 Jun 2026 23:32:55 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-03.internal (MEProxy); Thu, 04 Jun 2026 23:32:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=paquier.xyz; 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=fm1; t=1780630375; x=1780716775; bh=GBxvhIMoLB ds/Q5TTNRZyJW1hlcc9Z+ZZ58WVjcrMks=; b=Z1dBVnlNI2Twbu8oBLVJR0LIgP bHMuxWipFgycBMKlN/yJs4q+yqeNrhGptWNz1AWr9TPMFExxfLTOaHfHm+Wf9Uph gTR8v+l4LXIGyJ5UIWhPP5aNDpkqfy0bICdgaaB2HQ8CGB+ybZWEr/TT1VxRxb2s 4Us0C6zB0zvp4umzwfLdBbhpqgSgdqwOUArsNqR4YpSV37+5bpUQQZEvAxouSo5z GsenUmcDwAVX1jpVTQfoSoRzU0R9UQ1bMAWEfc/hWz+QwPme21k7rrEVUiY/y1Df B9wI22ZdkqYYFPPhSR/wHtLKMLd2lHdpsCXJ6Raag9naiOtDPTc45NeA/2/Q== 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-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1780630375; x=1780716775; bh=GBxvhIMoLBds/Q5TTNRZyJW1hlcc9Z+ZZ58 WVjcrMks=; b=bUaq/stuI4oJAZ/Djh10Z/HRvnF2e0GEO/ITs6X2YH6xO7RuipE Csy421evNG1L+n53kWgJsKb4cTTuahKBPwbA15uv3QSM5PVpNcbbZD0GfzXzDpUO mEu9/rMFkR1GCrddtpdv5CUIlhTl3XY9/WA3gKr1usGJkxol6BcAelGss+nYxOVs KL14gL/qtjKkeDM746fgmPnL/23SeT9f17Yj1t2h8jCpLWuE+I3seU3JnA5zBnDR DOyKpB2S62WlaXxoahgDnPnD7kSUuUijsGDN2WEdvWYzN3kurqeT0BLozAS2me64 WY4WzyIZUPbYwBZmvmNGLqAuPPPddWPuv+Q== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: dmFkZTFRZlWcgWSkpxj7Bx1YMfoJfFcZxsBFelzVqA1FkOcMoOIkYW6SdsAqRSsupm6sPa id134eri0kmTcyb4UT0bWpu2Voofp8CO9jhDpL6i+kCs6Y4E+J5bivDGPsMCh11V2M/PjL 6/hZUutW0Z7lo9Z780jo12Tuh2GjSeXJbYM/xkKAQ6+48hg/Rw/e+ADEXFbYN1HTV/P+wz vUqDGllMgQ9dObEgD2jC4NTC8yASr0kUEiqryyQ3xVMlqzU91jIoNjSOaEBT+b0zBoPm/i 6K3OYKwt/lGk/68UjdUTF9ZaMuAoCM0uyf9av+F/EAoc/Pr0a41X2WC1cPa3DTpZsmUvsW y6+7kz4odOE+xnGFSKNo2EVbsouJ96aE9xzuP0Zz+0wP778AI1MtjsMHC05kzcgNhHc++t 5loJaLCjmMexmiAoKVbVRvh71N3Mq4g9hu+14+GnDPHZZnGnk7BlK/+m54HYLn7SGSHK2Y h7SOTe8Hmp+A9J/wTUzl0lxK0eeGpjBiNvfOZUsXss5mhczHDqr9xl3Urt556a+vQ+1WeI oCWFiK98QMAey1wM0k8yD/qUtXnnppbjJYWjDASs6KeBTxqxb2W5KSS1OBDiVcl/BWlXw/ FQpKIKltXIOAsrACnIW6puzm3wuJUWAoXsrYHblO5/9FD0oMznCmRuFbzCqg X-ME-Proxy: Feedback-ID: i0fe9450f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 4 Jun 2026 23:32:52 -0400 (EDT) Date: Fri, 5 Jun 2026 12:32:49 +0900 From: Michael Paquier To: Baji Shaik Cc: pgsql-hackers@lists.postgresql.org, pg@bowt.ie Subject: Re: [PATCH] Add regression tests for btree skip scan support functions Message-ID: References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="PRNktnHIXKlqJglR" Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --PRNktnHIXKlqJglR Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Jun 03, 2026 at 07:16:15PM -0500, Baji Shaik wrote: > These functions feed into the skip-scan optimization added in > commit 92fe23d93aa for PG18, but the existing regression coverage > only exercises a few types (mostly int4 and varchar) on the leading > column of multi-column indexes. Thanks a lot for this patch. FWIW, I've noticed the gap a couple of months ago when adding oid8 but I have not been able to get back to it, noticing that the gap was wider than only oid8. > The attached patch adds a small section to btree_index.sql that > creates a two-column index (a, b) for each missing type, then runs > forward and backward Index Only Scans with a predicate on the > non-leading column (b). This forces the planner into a skip scan, > which in turn calls the per-type skip-support function plus the > increment/decrement helpers as it generates skip-array elements. Could you add this patch to the next commit fest please at [1]? That's to make sure that we don't forget about it when v20 opens for business. I am sure that nobody would complain it this gets applied on HEAD today (argument that this is an open item for v19 due to v19?), but that's a coverage improvement so let's just do that once REL_19_STABLE is forked. Perhaps we could do something for the overflow cases in the increment functions of oid, oid8, char, int8 and int4. int2_increment is lacking entirely. For the decrement functions, we still lack something for the overflow of int2, int8, char. You can run a coverage report to check all that: https://www.postgresql.org/docs/devel/regress-coverage.html [1]: https://commitfest.postgresql.org/59/ -- Michael --PRNktnHIXKlqJglR Content-Type: application/pgp-signature; name=signature.asc -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEG72nH6vTowiyblFKnvQgOdbyQH0FAmoiQ2EACgkQnvQgOdby QH3DVA/6Aq+uptBko6lPHCcdZbjgngDW+M0iSysfhY8tbvG8kBMQa2f6k6LsmSMH wVMxMKRserSZ2DtUxDWjXYmMcQK1IRnrhFSfWoE9c7LANW73JZoObCoV3tA+MaTt w5oOZ98EXSuVmwg90PLcCLH0H3FfCev4iKG+pyhN/pktFH0auPDFiKrBEJGR3Gpi 5PBxDJvNDJgJ8N6zC9oy0SxLR+WyFLoGgOhQpq/hu8tMx9pGUEidzJkSwq4pgSD5 X2Se8gNP04yQC8IpQcAQzqw0gc1eHWmL+bI5p2rArWAJ3E6O5mBuNYmf+LlfM/y6 VNWXoXZ7/RRGVPMesk7w3hlsYSI8P65QcodB/Y/Ll7eumuLZEUv/osahutJ0A/o0 /ur/sqxY5KBW+gO8LrkUsbDmwkYKl7TI8UkU/CIDR7uwSrEkJBXhxMVKb8XgMsoe 60aTyqN+ut15UZrPEhmiut4CoLPsIZ4srmNU8n0AgPBudk2bWUFYNtGomD63wRZO BJagDLT4YjYMgjoM05qBUMv4KymTzkWKKHFokIIfjDEWPk85ADbGot38pB0yYWXn 0LAKzW20rbGv0m42gDAu4UfGW65Aib05Z1MmFChLl5YdfWK+6Inkp9zGKBmKkE/a hp98j6RKN58og6gkJED+gy+w+ratRNxSITYFn0GM1HbmlWbQ7gE= =jLNh -----END PGP SIGNATURE----- --PRNktnHIXKlqJglR--