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 1wAkOt-000Hhh-1w for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Apr 2026 08:06:07 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAkOr-004NNu-0H for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Apr 2026 08:06:05 +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 1wAkOq-004NNm-2O for pgsql-hackers@lists.postgresql.org; Thu, 09 Apr 2026 08:06:05 +0000 Received: from mail-ot1-x32a.google.com ([2607:f8b0:4864:20::32a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wAkOp-000000008Br-2chE for pgsql-hackers@lists.postgresql.org; Thu, 09 Apr 2026 08:06:04 +0000 Received: by mail-ot1-x32a.google.com with SMTP id 46e09a7af769-7d7ebe11bffso600669a34.0 for ; Thu, 09 Apr 2026 01:06:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775721963; cv=none; d=google.com; s=arc-20240605; b=gGJPWHGk5ZmhrZ2zc3G5JLua5RJQT4DjbISX4NAMEYruF/NDXIH41sZcCxzdbGo9WY ssaMw7I+62dROQMu61o+0SHmQov+Wl7A7Fs8voStmdZJDnG5+17Kh+n4iR79XHK8ZX0q x7R5JkuRlbVeruu9lsgZrdeohDSuR/QbkCZG2z6mBFUIBgVBQ/ecJW7aAQkOYwYmg/61 sP5iBIR7GkqYLLNsB/3W3U8sCnQMZvGOAxf9HfEbQd7MuMjq9FABTQ94Ghhqo+5PWbIa uf1DlO+xpheLyi/girr+dUAt2D8xtrTMHWIXw7FPNMYqJOpQRaRChpVwGvsLw67xmSjd Y9fg== 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=EkVT2Nt5gLlANo/CLFwTOv4P6bnNuKTQybY4hFUu6tw=; fh=f8clE4axJuPccQujr2icfvOXdFEM2Vw3aHxux9mwlFg=; b=QKYT8KZgLrDWvKUU4Fd411tH+dXyPtzGmgCEOS88L2RRwAfDbCIlH8AXUeRejY1LIO SVE6Y+fCmf/B/S9B+WpsB+DWds0Ww0BCvrxalxFV7a7vEOAUxl4ewe7mKcH+Jb0MBLcs gO0YN+IjvjExIw1vOH51jk3G+3oxPy+XRqMXmlWL7A3g8WahbJFqij+fU1FZdME4QpoA JGbUHOJrk9IPGhWKiwi6zyx3hVRLixh/W5uY4Z7h0Zq/e/6Xdz66GewT/qmR6vhIf7C1 7fu6u5k0CbEAAPR6f3StSuDWMUlh4QEt0odlZ0wEDvJSZM811oXOXWYox9updta4ClEO fPhw==; 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=20251104; t=1775721963; x=1776326763; 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=EkVT2Nt5gLlANo/CLFwTOv4P6bnNuKTQybY4hFUu6tw=; b=JHn/0djDEl+KF290f7IumxqBWQaEEMLdDOaWuJYvx1ruKHTW+yw8xRDNa/0sGVMcw3 jrFrMDBEU4ih3ABrOwqxzk1kicv5ilRzGm+hQ5vEjWSNGP9hPeVGFuSvEZ45Xz/qpfTD JM8jpPHsvtHUEEWASqbnrbRcxqgKR9dKZ56bAeA+37TLsu/iCVrq2E4oLlM6nQoPAYcT 1z4gE8kIx6yGV7J1AzTGRBnkWfwvSPOcKnmk2S8Y10ck+VScSkiBXxJ6AyOsV0whNzl2 evGzrjYiBNPooLPJI9wrdYpH+cI1iXzstD5hChwO4QJ4jakvput/A3iojoD7Gb6lRBbg xZZg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775721963; x=1776326763; 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=EkVT2Nt5gLlANo/CLFwTOv4P6bnNuKTQybY4hFUu6tw=; b=rtClzzHY7WRjhg0BzG8kF+8Z/bXg36hLPzaAVav2a5L2SDkw7cMkASwLlTpb3w8YhF R7C75OqJ5t2UMNmEu1OP5UF06gLEH9EDhGxhcyQtl5ivp75F/DkqfECbLMlYIjSxb813 Nd/MYAGXs5GkEv7ersEPfbXwwteiNTwR0j+89h+H0esmowWs35CoT+l+EBNU54KfmC/E T280HJSJ1u+7GJZ9go0xjsJeDRm2OOSyKgesh00O+yo/kJldrm1/TskYE2a82xV0lEQV EFe86834/2xFTt5eBT9OqiVu9knA5cNh08E2knYnQ7C7soC5HKpQYKW2KAdhoWf4zsi3 GJOQ== X-Forwarded-Encrypted: i=1; AJvYcCWfse+gxFcyCxaE5tT9woW/4E/zcwS85SryH8iPTYY58abwhTwC8BPPuVG7m8uriBjVuFOmtJ8niez9Um7+@lists.postgresql.org X-Gm-Message-State: AOJu0YzQ4YQiIsHWpc9EtQqHlPvy/NRkJQ0fgGO0Hi1JD1VCnKvtw15r kFWipt7jWa8Z5fwUox09v3jNIs3n9UZBIjxQ1sgAMTUaUPNe3vmaw94OJp8LfRIFmgpD1HvqNRk 1M2xiOfN/9k/qEMKAvLzzZ0tc4eviF2c= X-Gm-Gg: AeBDietMmZcJvLZAvjcxvf9amTnHGigOXjmze72SJ4S7wXqTqzYh0IBQhPZAfWTxfgi hbTJvkV9kug7FHMvj4lMWsNePy8Ay5xEmRcHNk6hF2vDhCZcQdZeY6UzlaXdxtj9I3tVN4viQPT 9fmLjqReBlpf9/fvST/bBPzeTvOPfiwg63C5UvgWbC/4wLOLvuBgVMbeOhvmeC6nue6o2P5XyMI KwR3zsNy/uqo8nGWEArezYAegd/OwZszxuaCSgFNAa0b11cpsWdpmca79Vz3aLuuORhyn5C6Qe5 9sDDtV3X X-Received: by 2002:a05:6820:81c1:b0:67e:160c:36b2 with SMTP id 006d021491bc7-68a61b65984mr1438222eaf.28.1775721963169; Thu, 09 Apr 2026 01:06:03 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Richard Guo Date: Thu, 9 Apr 2026 17:05:11 +0900 X-Gm-Features: AQROBzBf9N3dPHI25BlpB9F4NZu5A4zxdeka8vnGSZcPjossY1SXvSZl0u0pxEU Message-ID: Subject: Re: Potential partition pruning regression on PostgreSQL 18 To: David Rowley Cc: =?UTF-8?Q?C=C3=A1ndido_Antonio_Mart=C3=ADnez_Descalzo?= , Pg 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 On Tue, Apr 7, 2026 at 5:00=E2=80=AFPM Richard Guo = wrote: > Here are the more formal patches for HEAD and for v18. > > In the HEAD patch, I renamed strip_phvs_in_index_operand() to > strip_noop_phvs() and moved it from indxpath.c to placeholder.c, since > it is now a general-purpose utility used by both index matching and > partition pruning code. > > However, since strip_phvs_in_index_operand() is an extern function > declared in a public header, I'm worried that third-party extensions > may have started calling it after it was introduced in ad66f705f. So > for the v18 back-patch, I retained strip_phvs_in_index_operand() in > indxpath.c as a thin wrapper around the new strip_noop_phvs(), to > avoid breaking such extensions in a minor release. > > Does this seem like reasonable caution, or is it overkill given how > recently the function was introduced? I prefer to be cautious, so I've committed the patches as-is. - Richard