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.94.2) (envelope-from ) id 1vAueo-007RxH-13 for pgsql-hackers@arkaria.postgresql.org; Mon, 20 Oct 2025 18:30:57 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1vAuem-0031FJ-JD for pgsql-hackers@arkaria.postgresql.org; Mon, 20 Oct 2025 18:30:55 +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.94.2) (envelope-from ) id 1vAuem-0031F9-4k for pgsql-hackers@lists.postgresql.org; Mon, 20 Oct 2025 18:30:55 +0000 Received: from mail-il1-x12a.google.com ([2607:f8b0:4864:20::12a]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vAuej-002ptn-1G for pgsql-hackers@lists.postgresql.org; Mon, 20 Oct 2025 18:30:54 +0000 Received: by mail-il1-x12a.google.com with SMTP id e9e14a558f8ab-430c17e29d9so21060115ab.1 for ; Mon, 20 Oct 2025 11:30:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760985052; x=1761589852; darn=lists.postgresql.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=yXlKDvrJAYpcoILLaj4afpMEodiU503jUmUf5xqPXLk=; b=bneQQwCOGiKe+OUeD9KmTW2Y2XgKVEth8H/j3YVcx9dgpUfW5mP3kwoqhTVn++nBJq aOibQxOXD/Jn88C69IvErLyRnibjoxFW906Bhq3fzw810GF6SCeH0qb0nApbRLllALXb yn5KuuN0odwYYCj87BSQoRMImtLQyURVcsvP8kGZXtZ33ejBTGmYCWfyJuU77QkIj6Ds ZQnOIJ02LClmoo5I87FN1Ik+JlJo8R7SC21arRqE+Q4YklwV7bWCadZrH755jJJ9jn5h 8gSWtZlgulAdYpy6STgf4CaV6n2wFgtNxhNNTFa9soV/2/xE5umywNO7g5x1PnOTxMtB o/EQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760985052; x=1761589852; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=yXlKDvrJAYpcoILLaj4afpMEodiU503jUmUf5xqPXLk=; b=QiUNDLxc8gX2vF9j+YfAW+hcjAQZOFkapHxxGUwgdM4ynLH1sKsA/WWTQ3Wk8NhFC9 eLwdJmpf5te06uSk3vGsgcQ6B5Tqke+ajajxqhoE8+hac2a4sh0k+GW7pLQp0dR3T7Vu FVISThi49YgP2lcD+77dsTq++VAZHzKE9UwsbPQTGFi6ntXLfpZGcvoGwoUjVDzrco5t ZrAKi+aKszU/il0iVsR4B9CeCuDABqb/WfmWi2LeZjpeUQpmipE25VwLsrTK3+XoiqX0 vyBKtopEhC0NcKsacqrf30a8M3sGc/IoATqVe3MoxfthbSPzQIZxqq680edcxdwnJduX 4hrA== X-Forwarded-Encrypted: i=1; AJvYcCW65t3h0NvBpNtkh0AwBqpbfP8cInJOYkkTN7xoQpF5jWtc+8sPRjKyv4qxcdxAUweTROlkx9JaJmqLbcMG@lists.postgresql.org X-Gm-Message-State: AOJu0YzmbqnXU47bqyl60pZaztgDKER9cuVyooliEpZuboo21Di2kmQY fHibIT37ETElGUs8tTLsRc9uXvHvws87VtX1aXVArNtS5eA3Ebnw+0P3 X-Gm-Gg: ASbGncv2km/MOrHPSexr0qr9wKJdjNSYgHpQcPOGUKS6xI4V1+r4bCMGqw4IyPXTW94 BnoBkvGdcPnUgmuk6/MEIZ2npx8OgOk2e2nT71Aj1rfk2DlHmpnyBWys3cfLjpMI8P9XoOJFdqO vSMlQgoiMu4wPe4g4/0pek/2MaFgRXvCIfd11L+1qzcw8Y9nvI+7Sbvd0ncOa3QUhjtCMu0CiYs bzpcAcVpMumIohQIm0u0DrAplMgwXtRf49mheW4BUrvG8nV+HcivVA+kKfskdRKrkFg0BAnbIyi EtUtWusUwZluKOztTxbuESk4Xq2g/ojyZawm+28tQB6H2XVEktT7A8+RrHX723VdhURxDqqPOnQ LTp4CYlDvWDQCcBYagtf9/81N39RxzwHNSSdkd1ZIU+F6DtxcAXiRLjiAzikNjSoX8uNtKWws4D 4f3rTY++bP/4YH6r34eWO8XkMcWHr5C6TOylLspxbQFae/AW2AOGQ9ledH8l4mmdgDoaKT4aT7+ ntK X-Google-Smtp-Source: AGHT+IFK7R1bXg43d0U85jUbcbltSSblaLFN8XS6p4Be6iJJCc+H3CjsK4KDmyXIMQLET61Z5FQrQQ== X-Received: by 2002:a05:6e02:1605:b0:430:a7d5:235f with SMTP id e9e14a558f8ab-430c52b5a72mr211204925ab.15.1760985051846; Mon, 20 Oct 2025 11:30:51 -0700 (PDT) Received: from nathan (162-195-168-172.lightspeed.stlsmo.sbcglobal.net. [162.195.168.172]) by smtp.gmail.com with ESMTPSA id 8926c6da1cb9f-5a8a95fed84sm3171495173.5.2025.10.20.11.30.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 20 Oct 2025 11:30:51 -0700 (PDT) Date: Mon, 20 Oct 2025 13:30:49 -0500 From: Nathan Bossart To: Tom Lane Cc: "David E. Wheeler" , Mankirat Singh , pg@bowt.ie, andrew@dunslane.net, pgsql-hackers@lists.postgresql.org Subject: Re: abi-compliance-check failure due to recent changes to pg_{clear,restore}_{attribute,relation}_stats() Message-ID: References: <78B81B37-9F27-4085-92DA-6B50DFC24361@justatheory.com> <1957147.1760800489@sss.pgh.pa.us> <17DB0A6A-C967-48A8-B1C0-9A4F31C4F8EF@justatheory.com> <230647.1760971159@sss.pgh.pa.us> <334460.1760980024@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="tfv5vCxQRCHWROjz" Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --tfv5vCxQRCHWROjz Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Oct 20, 2025 at 12:14:09PM -0500, Nathan Bossart wrote: > On Mon, Oct 20, 2025 at 01:07:04PM -0400, Tom Lane wrote: >> I'd tend to s/placate/control/, otherwise the proposed wording in the >> file looks good. I doubt we really need a script to generate the >> file in the first place -- why wouldn't copying another branch's >> boilerplate be good enough? If you're set on having a script, >> at least make it pre-fill the initial entry. (Using branch HEAD >> ought to be good enough for that.) > > I'm fine with leaving out the script if you are. It was only aimed at > making the release checklist a little less cumbersome, but even without the > script it's a whopping minute or two of effort that only needs to happen > once per year. I've probably already spent far more time automating it > than makes sense [0]. Here is an updated patch set. -- nathan --tfv5vCxQRCHWROjz Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=v3-0001-Add-notes-for-creating-.abi-compliance-history.patch.master From 02e535e224b6990fd12359fb4c01c762adacb682 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Mon, 20 Oct 2025 11:43:14 -0500 Subject: [PATCH v3 1/1] Add notes for creating .abi-compliance-history. --- src/tools/RELEASE_CHANGES | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/tools/RELEASE_CHANGES b/src/tools/RELEASE_CHANGES index c0d75c213be..a7c20855d54 100644 --- a/src/tools/RELEASE_CHANGES +++ b/src/tools/RELEASE_CHANGES @@ -61,6 +61,11 @@ in both master and the branch. * Ports o update ports list in doc/src/sgml/installation.sgml +* Create .abi-compliance-history file with initial entry shortly before the .0 + stamp. The easiest way to do this is to copy it from the previous + REL_*_STABLE branch, remove all entries, and follow the instructions in the + file to add the initial reference point for the major version. + Pre-Beta Tasks ============== -- 2.39.5 (Apple Git-154) --tfv5vCxQRCHWROjz Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=v3-0001-Update-.abi-compliance-history-file.patch.v18 From 93f53c805f4f43dfa79b0d48039999d3b13f5b55 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Mon, 20 Oct 2025 11:21:04 -0500 Subject: [PATCH v3 1/1] Update .abi-compliance-history file. --- .abi-compliance-history | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/.abi-compliance-history b/.abi-compliance-history index 3d0d26aff90..68f8b3bcfc1 100644 --- a/.abi-compliance-history +++ b/.abi-compliance-history @@ -1,7 +1,36 @@ # Reference point for ABI compliance checks +# +# This file lists commits on the current branch that break ABI compatibility in +# ways that have been deemed acceptable (e.g., removing an extern function with +# no third-party uses). The primary intent of this file is to control the ABI +# compliance checks on the buildfarm, but it also serves as a central location +# to document the justification for each. +# +# In general, entries should be added reactively after an abi-compliance-check +# buildfarm failure. It is important to verify the details of the breakage +# match expectations, as the first entry listed will become the updated ABI +# baseline point. +# # Add new entries by adding the output of the following to the top of the file: -# $ git log --pretty=format:"%H # %cd%n# %s" $ABIBREAKGITHASH -1 --date=iso # -# Initial entry would normally point to a commit slightly before the .0 stamp. -9bbcec6030a2744d83311370ec92213fbd76e514 # 2025-09-22 14:18:56 +0200 +# $ git log --pretty=format:"%H%n#%n# %s%n# %cd%n#%n# " $ABIBREAKGITHASH -1 --date=iso +# +# Be sure to replace "" with details of your change and +# why it is deemed acceptable. + +c8af5019bee5c57502db830f8005a01cba60fee0 +# +# Fix lookups in pg_{clear,restore}_{attribute,relation}_stats(). +# 2025-10-15 12:47:33 -0500 +# +# This commit replaced two functions related to lookups/privilege checks for +# the new stats stuff in v18 with RangeVarGetRelidExtended(). These functions +# were not intended for use elsewhere, exist in exactly one release (18.0), and +# do not have any known third-party callers. + +9bbcec6030a2744d83311370ec92213fbd76e514 +# # Translation updates +# 2025-09-22 14:18:56 +0200 +# +# This is the original ABI baseline point for REL_18_STABLE. -- 2.39.5 (Apple Git-154) --tfv5vCxQRCHWROjz--