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 1w34sU-000sLz-2i for pgsql-hackers@arkaria.postgresql.org; Thu, 19 Mar 2026 04:20:59 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w34sT-00GCJN-2U for pgsql-hackers@arkaria.postgresql.org; Thu, 19 Mar 2026 04:20:57 +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 1w34sT-00GCJF-1H for pgsql-hackers@lists.postgresql.org; Thu, 19 Mar 2026 04:20:57 +0000 Received: from mail-dl1-x122e.google.com ([2607:f8b0:4864:20::122e]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w34sQ-000000013jE-30Cd for pgsql-hackers@postgresql.org; Thu, 19 Mar 2026 04:20:57 +0000 Received: by mail-dl1-x122e.google.com with SMTP id a92af1059eb24-1271257ae53so765200c88.1 for ; Wed, 18 Mar 2026 21:20:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773894053; cv=none; d=google.com; s=arc-20240605; b=bYPweTqFPG+J5LF4BVs+mnVTs6YuXSj5hBk/klcts9tyr7S2HURJrqraAuY7ojfjQK 9eAetldsWmEDO4iwXhGOgZUkiyYSVfFpel1m4IyKK1wel7lXnbA+81b31dpyIlglWCiw t4rcmxESlUpjiFx2iVOsdXd7waQQjRCwggF2uKb9MgaWl6SgzFCD0CsZFUf+95WPDYoj sjil9AAhwu1suTv6qMaFHQ9Hkuugw7Qa01njn1Y6S1hAP4gD0XTp9JVufAbAupHsNCBi wupjsYcFe6skyT59VkeloV12UxD3cXJku3h0KIBckmfNBwz8R+XGhkGFVam2MxCWC2fk CT3Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=PuIhbMfUpdyI3Zr0RNE9GPvkLPLeIN1DxBNgScpThOw=; fh=KPZpRHZGKoFd0T1eFDBeUXfjLs8M917vwSeHXUj+q/c=; b=NTiK+thqQL9MMFigKJ7aQQf5cTmJSTV3BwIRfr2c8BdrhvQjNgkpQ57CNqEalDLU8z E5ABL5wLWULVA3nncoZyHmytwPCm0WobB18er5aTY2nsBQJ2SWsr2GjjvwvzCJtyqQKu Np1bIYMzMs9UX/FPf1LDCMUZsAjXIrXBWQdG0Yb+/DFpqOXxp57FmItwULCgJ4sqYuZF 4DY/7GJEOvaXf1OFcBkavc1FGirwEq5P+Hz7W26tXKbvSZjJhmTO4XfwvF4JEs8kZuzl y2jZU8WIjxCwyYnqF2zmD2AG/NErtRc/qxb5eOdfmlThPTTD0zTPhOy/AfXRr6ye96wI cPWQ==; darn=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=1773894053; x=1774498853; darn=postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=PuIhbMfUpdyI3Zr0RNE9GPvkLPLeIN1DxBNgScpThOw=; b=P5F/h46hqiVtYlIkOJet23qH/uG5EcUHAcdikI40LpZLMXayIuoipSOQhCQA6wTf4T wZ63vtXikVoPDFac9Zo1POgPv9zluLDptsZVDG1kbOUou6XJow8kNHBMfsmSdSpjD00h lZA3MgLEjffguj/UFyZz/xybnwhXLGF2EzbyMxDVRYjnklHhbuaCbbavb9eNJpWUR+hm nxZy1XTpQQFosmXtTkg3ojbAl5hLmerjfaoSlg7XjpDjhoTcMBnpuguD2xLIhREuE3+1 Ef8CUjrObawNgHira9QtcwezIIHBjQdNjeS48mptRmUiNLDTlwiqvwuQiLjoK4B+18x2 0iTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773894053; x=1774498853; h=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=PuIhbMfUpdyI3Zr0RNE9GPvkLPLeIN1DxBNgScpThOw=; b=p7DQH+QA5uQr7B+pHa9+kHG/XvDcrwjnYedFwWQq5TeJi4nDobkTbvmkRwc4+XmTCN 8oDdXVTnD+mZDD7eilomFIVd9DZDccvyX813jY8bjcAIu1x43F6j0Ck3DIkRGmxGxmlN fN9cKJy/hu7qvv3zG+KphcpYSitWK3H9OWU/EsW07y2HhGv/+RPt9//SisSOeoFqrT6R xMFaMtoEiL8KY+qHYAxl5FU1EoeCeACeNdjF+w/Xh2PeV/mgirazVBmib7mCYsFpsgq2 kmYLIzeDYgxQVbdOyXFs4r6Ss5pVDviQQsSBAPcyVgLn1Z/vdy6LjNvlbHO1zVG4ccvK IH5w== X-Forwarded-Encrypted: i=1; AJvYcCXIfcoDZztV052ezSmY1ztP57Gy4YyUEtkU/DkcViy/CRH/l926pQng1+xwLlCBpHqAjGExdyEdpKKTl4XX@postgresql.org X-Gm-Message-State: AOJu0YyG2s1Ix+PqcAckUA1UK1XdCemVtF2NO9iMVwcvCpLDVcXnQmXK jKvRnrC/6oSBDYY8qKZIxwPUn959LtyOTwa2YTZ9LR+4pIyRIQ5kAz6UrNmmpBPuo/MPlg1zAM7 mjXHFCvCl6LUtZrLV/r7UxIS1T8yQGiw= X-Gm-Gg: ATEYQzzCYi2sTDSO85BXLUth9Jx0eVB0V/8DD/9DKki4x5AJvi0aBjRg8tv3bKa/cpz l8s8bq7dwER4lDBJ+i0eP6GSa5278VnGdVJ4FzQ1KtrJ/zEBGWHfCyq59G9irARy0SalrSgbFDk BJtyobfSymL0q7ow7iYWBOfq1cetI++THaEK82u3nsW+NjdfxFMISK3suoThoOd0jKvyFW3Y6XH YoducdKLBvd2EkVVtrQ1WQnqAxGRVi9x8/rUKdWHhQRI2Y/mD719w6wchoAe4DlpLdCn1HosAfb M/mZ7nnERZvqFXg4ZeuGVkpfcpGCXTDfDmb2gaEAc8tfg/3XzwOGkVTPeRUfmzpWnx8C27H70rz Dw1xRb8OAo3SHVhkX4guIqdVD X-Received: by 2002:a05:7022:f103:b0:128:d6c3:9b27 with SMTP id a92af1059eb24-129a717dce3mr2766552c88.37.1773894052506; Wed, 18 Mar 2026 21:20:52 -0700 (PDT) MIME-Version: 1.0 References: <8b8aa673-fcef-4e14-a05d-0885283ef1b8@pgbackrest.org> <17DC1346-0CDE-4E39-B110-3D6FB0797AC6@gmail.com> <7F7B289B-F94F-42C2-9E54-6A689C0D64BB@gmail.com> <1800c83c-264a-4183-9da5-ac78e25849a8@pgbackrest.org> <3b23e3b7-53d2-4784-b482-05cca3327acb@pgbackrest.org> <37eaba89-baeb-4087-b8ec-3bd8f1f1a8db@pgbackrest.org> In-Reply-To: <37eaba89-baeb-4087-b8ec-3bd8f1f1a8db@pgbackrest.org> From: Corey Huinker Date: Thu, 19 Mar 2026 00:20:40 -0400 X-Gm-Features: AaiRm51b4Bh291vkCVjyw2L9TFzjh1FCAUu6oCwSISEhJCpIDOPznTb1pJvvW3I Message-ID: Subject: Re: Return pg_control from pg_backup_stop(). To: David Steele Cc: Michael Paquier , Haibo Yan , Pg Hackers , Heikki Linnakangas , Robert Haas , Andres Freund , Fujii Masao Content-Type: multipart/alternative; boundary="000000000000de701c064d58e4ec" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000de701c064d58e4ec Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Mar 18, 2026 at 10:56=E2=80=AFPM David Steele wrote: > Hi Corey, > > On 3/19/26 04:00, Corey Huinker wrote: > > Whatever gets committed for PG19 I'll write a followup patch to > > describe > > the hazards of reading pg_control and generally how to get a good > copy. > > However, this will be complicated enough that the best answer will > > likely be to use pg_basebackup or some other reputable backup > software. > > I don't love this -- I feel like the low-level interface should be > > usable with such hazards. > > > > Surya Poondla and I had decided on this patchset as a pair-reviewing > > exercise. However, events have overtaken us, and several other people > > have chimed in expressing the same concerns that we had observed but > > hadn't yet completed our review. > > Thank you both for having a look! > > > All of the main concerns that we had > found up to this point have > been addressed in the lastest patchset, > > except for the trivial observation that the ereport() uses the old styl= e > > and doesn't need the set of parens around (errmsg(), errhint()). > > Grep shows there are lots of messages with the new style but many more > in the old style. Presumably they are only being updated as they are > modified. That's always been my assumption. Not worth the churn. > Do you happen to know the commit or message thread where this > policy was started? I've been searching but it is such a generic search > term. > I limited my git log -p to elog.h, and it seems it started with e3a87b4991cc back in 2020. The only reason I knew about it was that I used to do backports from v13 to unsupported versions, and the new style would cause the build to fail on an otherwise clean cherry pick. > It seems to me you've still done a review. Confirming what the other > reviewers found is good info to have. > Of a sort, yes, but our review doesn't touch the "is this a good idea" question, which has been by far the thing most in need of reviewing across the long discussion threads. --000000000000de701c064d58e4ec Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Wed, Mar 18,= 2026 at 10:56=E2=80=AFPM David Steele <david@pgbackrest.org> wrote:
Hi Corey,

On 3/19/26 04:00, Corey Huinker wrote:
>=C2=A0 =C2=A0 =C2=A0Whatever gets committed for PG19 I'll write a f= ollowup patch to
>=C2=A0 =C2=A0 =C2=A0describe
>=C2=A0 =C2=A0 =C2=A0the hazards of reading pg_control and generally how= to get a good copy.
>=C2=A0 =C2=A0 =C2=A0However, this will be complicated enough that the b= est answer will
>=C2=A0 =C2=A0 =C2=A0likely be to use pg_basebackup or some other reputa= ble backup software.
>=C2=A0 =C2=A0 =C2=A0I don't love this -- I feel like the low-level = interface should be
>=C2=A0 =C2=A0 =C2=A0usable with such hazards.
>
> Surya Poondla and I had decided on this patchset as a pair-reviewing <= br> > exercise. However, events have overtaken us, and several other people =
> have chimed in expressing the same concerns that we had observed but <= br> > hadn't yet completed our review.

Thank you both for having a look!

=C2=A0> All of the main concerns that we had > found up to this point= have
been addressed in the lastest patchset,
> except for the trivial observation that the ereport() uses the old sty= le
> and doesn't need the set of parens around (errmsg(), errhint()). <= br>
Grep shows there are lots of messages with the new style but many more
in the old style. Presumably they are only being updated as they are
modified.

That's always been my assumpt= ion. Not worth the churn.
=C2=A0
Do you happen to know the commit or mess= age thread where this
policy was started? I've been searching but it is such a generic search=
term.

I limited my git log -= p to elog.h, and it seems it started with e3a87b4991cc back in 2020. The on= ly reason I knew about it was that I used to do backports from v13 to unsup= ported versions, and the new style would cause the build to fail on an othe= rwise clean cherry pick.
=C2=A0
It seems to me you've still done a review. Confirming what the other reviewers found is good info to have.

Of a s= ort, yes, but our review doesn't touch the "is this a good idea&qu= ot; question, which has been by far the thing most in need of reviewing acr= oss the long discussion threads.
--000000000000de701c064d58e4ec--