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 1tC5PL-00B6Pm-Bz for pgsql-hackers@arkaria.postgresql.org; Fri, 15 Nov 2024 23:07:18 +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 1tC5PH-00CDMC-M8 for pgsql-hackers@arkaria.postgresql.org; Fri, 15 Nov 2024 23:07:16 +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.94.2) (envelope-from ) id 1tC5PH-00CDM3-CY for pgsql-hackers@lists.postgresql.org; Fri, 15 Nov 2024 23:07:15 +0000 Received: from mail-pl1-x634.google.com ([2607:f8b0:4864:20::634]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1tC5PD-0029Us-Ss for pgsql-hackers@postgresql.org; Fri, 15 Nov 2024 23:07:14 +0000 Received: by mail-pl1-x634.google.com with SMTP id d9443c01a7336-21116b187c4so489605ad.3 for ; Fri, 15 Nov 2024 15:07:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; t=1731712031; x=1732316831; darn=postgresql.org; h=user-agent: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=PCSVY1/8ptb5zbkM3p4C3F6Sd57hZ+f0scWYISwY/ys=; b=YLOmYZdGb5YQheueUFFc/yvzpF7MPr5Aj+Vdvi3M952hVTHjGomb32tEvd/YOBtTNU yC1NKIPXoZBM9/TmxXZnn8JA3adu9RxGcBiNoWSzc94m5zvzX/UvocM0tCoRP7rVkZGj Ej86enQBTBv8bbu0lb1GI1oFd3+BEJOeG7Bqc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731712031; x=1732316831; h=user-agent: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=PCSVY1/8ptb5zbkM3p4C3F6Sd57hZ+f0scWYISwY/ys=; b=XMaTNlFP3m1fZi3AhYl0+Uzspk6OeXglgXkv5TNB+Q/2foNCmL0cCgMptc18TJQimc hLLwn+vu+vprbC8QSeeqyryQt2wdEuDNp8LnYCjwH7nXaoTWwGFvGE2pBnx6xYIUpliH kLlEXZ+z6vmV+Q8c6uiiTpBfYiFmx92od4zW/BXeZUxCXvJS2q5qdP3XFfJfChHGnYQZ l0Sb8qqvlA425Kq/IAqrVbtOHc7+JAd6qNnsm75d8PwGgF7I/YH6pah2An6ViuIcQnlx iLBMFsI7Bq7knjKCn0KvfyxCqjhDhyqzIo8EOBZC3ZbuPE52XsndKHdnEKtW8dsKKC6T 27Sw== X-Forwarded-Encrypted: i=1; AJvYcCUaTT+ZGMSPR8ARpXSC3orF4jYq936Ryn/4ZpnhmGCvuJCVjXFTzYeu9hNIDkNQgEkgsinkRLr5jEu64OKP@postgresql.org X-Gm-Message-State: AOJu0Yz20ZfddCGw0IEwF1PIQD5//Z/J/xFPeKxozw8Fogzqzi7pUmX6 YgyVoDcyKkQ+/3fkt12KeugYu7ygLgKXpC1M0EMxRn9S1QC01K4Wf8bWGCDMVQ== X-Google-Smtp-Source: AGHT+IGw9Ah/PlcOqXxKwmjIUuUQ053OFStBGgLV7xlNYu577fC6a0BpamCGZbmeyAc5WhlzjH8C/w== X-Received: by 2002:a17:902:e5c9:b0:20b:ce88:1b9d with SMTP id d9443c01a7336-211d0ec0544mr48857495ad.45.1731712030889; Fri, 15 Nov 2024 15:07:10 -0800 (PST) Received: from google.com ([2600:1702:a20:5750::48]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-724771358dbsm1901400b3a.83.2024.11.15.15.07.09 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 15 Nov 2024 15:07:10 -0800 (PST) Date: Fri, 15 Nov 2024 15:07:08 -0800 From: Noah Misch To: Tom Lane Cc: Aleksander Alekseev , pgsql-hackers , Marco Slot , Alvaro Herrera , Christoph Berg , Pavan Deolasee Subject: Re: Potential ABI breakage in upcoming minor releases Message-ID: <20241115230708.6b.nmisch@google.com> References: <202411142033.u6za5a6ylj2k@alvherre.pgsql> <20241114224108.d0.nmisch@google.com> <2443809.1731683394@sss.pgh.pa.us> <20241115175223.68.nmisch@google.com> <2483970.1731702561@sss.pgh.pa.us> <20241115222749.2b.nmisch@google.com> <2551426.1731710221@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2551426.1731710221@sss.pgh.pa.us> User-Agent: Mutt/2.2.12 (2023-09-09) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, Nov 15, 2024 at 05:37:01PM -0500, Tom Lane wrote: > Noah Misch writes: > > Currently, we have Christoph Berg writing "I'd say the ship has sailed, a new > > release would now break things the other way round." and you writing in favor > > of undoing. It think it boils down to whether you want N people to recompile > > twice or M>N people to recompile once, where we don't know N or M except that > > M > N. Fortunately, the N are probably fairly well represented in this > > thread. So to all: please speak up by 2024-11-16T17:00+0000 if you think it's > > the wrong choice to bring back the v16.4 ABI and tell people to rebuild > > extensions built against v16.5 (likewise for corresponding versions of > > v14-v17). Currently, the plan of record is to do that. > > Well, no, what I propose is for some number of people to not recompile > extensions at all. Only the sort of early adopters who install a new > PG release on day one will have run into this, so I anticipate that > that number will be much larger than the number who have already done > a rebuild. If you're saying that undoing the ABI break would allow the M builders to rebuild zero times, I agree. In other words, here are the number of rebuilds by builder group: If we undo, group N: 2 rebuilds If we undo, group M: 0 rebuilds If we don't undo, group N: 1 rebuild If we don't undo, group M: 1 rebuild I think you're predicting that M is much larger than N. That may be so. A builder will be in group N if they publish or consume 2024-11-14 builds for any amount of time. A builder is in group M if they skip the 2024-11-14 release entirely. Note that people getting binaries from someone else don't increase the size of N or M; builders of binaries (both packagers and self-packaging users) are the populations to count here. In this thread, Christoph Berg and Gregory Smith have asserted membership in that group N. We can indeed advise builders to wait in group M instead of joining group N, but N is already nonempty. Also, some builders and users of their builds can't afford to wait. That's why I described it the way I did. I'm no longer arguing against the undo, but I'm trying to explain the consequences rigorously.