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 1o1AeD-0006NQ-Iq for pgsql-admin@arkaria.postgresql.org; Tue, 14 Jun 2022 17:48:13 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1o1AeC-0002hn-8o for pgsql-admin@arkaria.postgresql.org; Tue, 14 Jun 2022 17:48:12 +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 1o1AeB-0002hH-4O for pgsql-admin@lists.postgresql.org; Tue, 14 Jun 2022 17:48:11 +0000 Received: from out1-smtp.messagingengine.com ([66.111.4.25]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o1Ae7-0005LS-2l for pgsql-admin@lists.postgresql.org; Tue, 14 Jun 2022 17:48:10 +0000 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id A2BDC5C0132; Tue, 14 Jun 2022 13:48:04 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Tue, 14 Jun 2022 13:48:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; t=1655228884; x=1655315284; bh=y Cskt0w+TZfl4k7jz6x9Wl5wfSZ5vplskXUzouVyvDg=; b=dvGKjUfdbn5G+8bFv 4ivQUI637iPxuWho3UfPG/O22on3+phCgwlQFjLeIu4cuqK4+LiMXZ54oVLXgZD6 jpFSG3E1eLj3TOg9Yr8C+5GfEowhUW46QHaA80Ejp/qV5d7x93Q9ebsXYEhinUMJ 4N2ajrowPLXUxbrD1xI1VeRE2KuoWyzGekHuFGQHTwAk/yRYv4gerJ/Pg9Pqa9oJ dUdlGxDFg4E63B/CP7AmXcTfAwQ1rc9A/GNGMHnoQrV11wF0ge/JjVszmJYxW8KF o78u/2W/AR8emBdYDiLdN1fwx/50iJgSHEGKC31GUMb/P6h/Im7lDoDaySPWn49D Rfyqw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudduledgudduhecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfggtggugfgjsehtkeertddttdejnecuhfhrohhmpemllhhv rghrohcujfgvrhhrvghrrgcuoegrlhhvhhgvrhhrvgesrghlvhhhrdhnohdqihhprdhorh hgqeenucggtffrrghtthgvrhhnpedvheeuffehgfeukeeufeehhefghfeugfefudekjeev udffgeffkeegffffveegheenucffohhmrghinhepvghnthgvrhhprhhishgvuggsrdgtoh hmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprghl vhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh X-ME-Proxy: Feedback-ID: ia2694551:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 14 Jun 2022 13:48:04 -0400 (EDT) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id 49A14347; Tue, 14 Jun 2022 19:48:02 +0200 (CEST) Date: Tue, 14 Jun 2022 19:48:02 +0200 From: =?utf-8?Q?=C3=81lvaro?= Herrera To: Sergey Aleynikov Cc: pgsql-admin@lists.postgresql.org Subject: Re: Xmax precedes relation freeze threshold errors Message-ID: <20220614174802.cpm66yeoddpr5rgz@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2022-Jun-14, Sergey Aleynikov wrote: > On Tue, Jun 14, 2022 at 7:12 PM Álvaro Herrera wrote: > > - Maybe there's some bug in amcheck that causes it to report tuple > > with an old xmax but which in reality are frozen? I don't think > > this is very likely, but In order to discard this hypothesis, you'd > > have to show the output of `heap_page_items` from the pages in > > question, or at least give some thought to the bits in `t_infomask`. > > I've run verify_heapam() in a loop for a single table. Some runs it > shows nothing (i've seen three consequent empty runs), and on each run > it shows something - it reports different pages. Oh, that definitely sounds like a bug in amcheck then. Please post the output of select * from heap_page_items(get_raw_page('the table', the_page)); for some of these pages, preferrably just around the time the errors for these pages are shown; maybe someone can figure out which tuples cause these errors and how to fix amcheck. It might be difficult to catch tuples 'in the act' though. Maybe you can script things so that amcheck is run and the output feeds a script that runs heap_page_items. -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/ "Digital and video cameras have this adjustment and film cameras don't for the same reason dogs and cats lick themselves: because they can." (Ken Rockwell)