Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1poSzv-0000A0-PQ for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Apr 2023 17:50:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1poSzu-0000sa-Kw for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Apr 2023 17:50:38 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1poSzu-0000sQ-B9 for pgsql-hackers@lists.postgresql.org; Mon, 17 Apr 2023 17:50:38 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1poSzr-003TKj-02 for pgsql-hackers@postgresql.org; Mon, 17 Apr 2023 17:50:37 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 33HHoUj22454847; Mon, 17 Apr 2023 13:50:30 -0400 From: Tom Lane To: Andres Freund cc: Matthias van de Meent , Justin Pryzby , pgsql-hackers@postgresql.org Subject: Re: v16dev: TRAP: failed Assert("size > SizeOfXLogRecord"), File: "xlog.c", Line: 1055, PID: 13564 In-reply-to: <2444561.1681748021@sss.pgh.pa.us> References: <2444561.1681748021@sss.pgh.pa.us> Comments: In-reply-to Tom Lane message dated "Mon, 17 Apr 2023 12:13:41 -0400" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <2454845.1681753830.1@sss.pgh.pa.us> Date: Mon, 17 Apr 2023 13:50:30 -0400 Message-ID: <2454846.1681753830@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk I wrote: > Yeah, I just came to the same conclusion. One thing I don't understand > yet: log_newpage_range is old (it looks like this back to v12), and > that Assert is older, so why doesn't this reproduce further back? > Maybe the state where all the pages are new didn't happen before? Bingo: bisecting shows the failure started at commit 3d6a98457d8e21d85bed86cfd3e1d1df1b260721 Author: Andres Freund Date: Wed Apr 5 08:19:39 2023 -0700 Don't initialize page in {vm,fsm}_extend(), not needed So previously, log_newpage_range could only have failed in very unlikely circumstances, whereas now it's not hard to hit when committing a table creation. I wonder what other bugs may be lurking. I'll patch it back to v12 anyway, since that function is clearly wrong in isolation. regards, tom lane