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 1vViXw-006gfQ-2e for pgsql-hackers@arkaria.postgresql.org; Wed, 17 Dec 2025 03:49:53 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vViXu-009qsp-1F for pgsql-hackers@arkaria.postgresql.org; Wed, 17 Dec 2025 03:49:51 +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 1vViXt-009qs6-1w for pgsql-hackers@lists.postgresql.org; Wed, 17 Dec 2025 03:49:50 +0000 Received: from fhigh-b6-smtp.messagingengine.com ([202.12.124.157]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vViXr-0019tf-1n for pgsql-hackers@postgresql.org; Wed, 17 Dec 2025 03:49:50 +0000 Received: from phl-compute-03.internal (phl-compute-03.internal [10.202.2.43]) by mailfhigh.stl.internal (Postfix) with ESMTP id 25F1F7A0145; Tue, 16 Dec 2025 22:49:46 -0500 (EST) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-03.internal (MEProxy); Tue, 16 Dec 2025 22:49:46 -0500 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=1765943386; x=1766029786; bh=dnOol/nedW qTwI8mDjcMr3qJ99DcbdChqO5PfMphec4=; b=iCZnZ4ZiRTJhAKrFDzsblUCIsy i7zXYAJUdsab3VD4Wncya3Gq6ibuBD3XnkMf7a6l/bZhFG+xbw/BucjaqMO0a5rX obfWRypGKlfr42Y0Cjx9MVUlWLtuVZxMIwUyduzDbcf2YRqk4kYdiefUeQvAX38k nyUnvo6Urb7ZOvcym9is4UojzM5U6QphcCq8EbGUBcXiupUAgQIu9XLifWIHejaM aPEySsXTWwV8F6e6b68gNYWFLkP0Vz7hMXO+ueQzNwv4ab3+KF53CiX+kakPLFmk g6p0AP3RUKfRNzY1omgCBRRi9IEgJI8o0emOFEaPqwDnFSh/t7jgVzHb01Mg== 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= 1765943386; x=1766029786; bh=dnOol/nedWqTwI8mDjcMr3qJ99DcbdChqO5 PfMphec4=; b=lKZOJlc/F048xKKv7k/Apm3Y3eqVzgknQpH6i9ooi7V5UC+mwRV YNjptGulpwIHOzJHnSJ+AnR2ONRjSHAFy6Hlv3wqWXZw+yd/SgrUxXQVxwi+hU5s jf5nPWbRt+197+9h1aGSHklFcdbhl2ySz+c14FYffRqjEmRs+5OVXo8x+ouiYRxQ OcXUe8icGN/Me/DX4T7W0t415tVSttFuj8ShnB7f+OxwTTfg737uMmE2MCWJ7pdA REN4ZD9FVmx0vyOlvQoSOZLjuTYbsx+jF+gYZqdhCklnkCqSUaTa99Ep1Lel48lc aT0/BJJlvnkQkonKTeH7Tb95VnUqpPUOcYA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdegudehvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenfghrlh cuvffnffculdejtddmnecujfgurhepfffhvfevuffkfhggtggujgesghdtreertddtjeen ucfhrhhomhepofhitghhrggvlhcurfgrqhhuihgvrhcuoehmihgthhgrvghlsehprghquh hivghrrdighiiiqeenucggtffrrghtthgvrhhnpeevteejgfejveegudekheeiueeiueei veeuiedugeehveeugffgudeuleegleeiteenucevlhhushhtvghrufhiiigvpedtnecurf grrhgrmhepmhgrihhlfhhrohhmpehmihgthhgrvghlsehprghquhhivghrrdighiiipdhn sggprhgtphhtthhopedvpdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehnihhtih hnjhgrughhrghvphhoshhtghhrvghssehgmhgrihhlrdgtohhmpdhrtghpthhtohepphhg shhqlhdqhhgrtghkvghrshesphhoshhtghhrvghsqhhlrdhorhhg X-ME-Proxy: Feedback-ID: i0fe9450f:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 16 Dec 2025 22:49:44 -0500 (EST) Date: Wed, 17 Dec 2025 12:49:32 +0900 From: Michael Paquier To: Nitin Jadhav Cc: Pg Hackers Subject: Re: Change =?utf-8?B?Y2hlY2twb2ludOKAkXJl?= =?utf-8?Q?cord=E2=80=91missing?= PANIC to FATAL Message-ID: References: MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="SYzmm/7UfUdQUk/S" Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --SYzmm/7UfUdQUk/S Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Dec 16, 2025 at 04:25:37PM +0530, Nitin Jadhav wrote: > it seems reasonable to align the checkpoint=E2=80=91record=E2=80=91missin= g case as well. > The existing PANIC dates back to an era before online backups and archive > recovery existed, when external manipulation of WAL was not expected and > such conditions were treated as internal faults. With all such features, = it > is much more realistic for WAL segments to go missing due to operational > issues, and such cases are often recoverable. So switching this to FATAL > appears appropriate. >=20 > Please share your thoughts. FWIW, I think that we should lift the PANIC pattern in this case, at least to be able to provide more tests around the manipulation of WAL segments when triggering recovery, with or without a backup_label as much as with or without a recovery/standby.signal defined in the tree.=20 The PANIC pattern to blow up the backend when missing a checkpoint record at the beginning of recovery is a historical artifact of 4d14fe0048cf. The backend has evolved a lot since, particularly with WAL archives that came much later than that. Lowering that to a FATAL does not imply a loss of information, just the lack of a backtrace that can be triggered depending on how one has set of a cluster to start (say a recovery.signal was forgotten and pg_wal/ has no contents, etc.). And IMO I doubt that a trace is really useful anyway in this specific code path. I'd love to hear the opinion of others on the matter, so if anybody has comments, feel free. I'd be curious to look at the amount of tests related to recovery startup you have in mind anyway, Nitin. -- Michael --SYzmm/7UfUdQUk/S Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEG72nH6vTowiyblFKnvQgOdbyQH0FAmlCKEwACgkQnvQgOdby QH1BgRAAmTuC8K5dkWGooNbujwBkCs0zbHqT9VMSLDba0GsTYwuRq71L3tlKJikD 6enqBsEldWAl68m2UGLM9NT7E9+qRb/frhLQU4M/0iAd0q4Q+xOHluXVe+bk9Ayv 2jv9xKE+2NShTvcAWz+q1Rf9/ENSX4f2vtUGiswjaaufp9fWQNIA/QzJNGdPhWAc py3UaLD1Mg3VOUad8gd+Ks2qIfMO9M1HkhdDfYECQLy39DcJOxVnYrF9tzsbuPlM 2HlG5SBItLNYi4Lh9wnglQTK6u2wumFUFRqdcE6vRXnqsvdiv94qgozAICYlCAfz i0yjoL01H1vDEAZ3aSN/Q+cGfuZD8cQMw8C1PH7rc5MPTuyVTY2AF+4B3ZWmmOGZ TrUrMP5w2cK+oK14QrOsxvsw1SD37zf5xxbeOP/4SzBcDKhKPeHGqD56b11Qykcs u+1rEQVSFAyuFBR6AsrmrBESgVm/0Llor14ap37G1ArdWkXdSlB/tATzskMw7Yd+ zBuwFgdHbSoHVEayz6yKacPW7ERDPtV81G1dWF3pBrb+HujbQNT5lazLQkDcyN7e ETGUyGkboo0vu+rNNL5LJNVZK9rMk78kaPFR2eFGjecGqcwToYg/ZUFZUWvX6xWM G/SeDaNphxz4fPicAwAtAE4jJpQsM7CyhhbiV1b9YGdsbzkLMTs= =pP/G -----END PGP SIGNATURE----- --SYzmm/7UfUdQUk/S--