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 1x5Tzw-0006Cx-0G for pgsql-hackers@arkaria.postgresql.org; Sat, 12 Sep 2026 20:06:52 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1x5Tyv-003AGI-1K for pgsql-hackers@arkaria.postgresql.org; Sat, 12 Sep 2026 20:05:49 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1x5Tyv-003AFp-0C for pgsql-hackers@lists.postgresql.org; Sat, 12 Sep 2026 20:05:49 +0000 Received: from mail-pj2-x10.google.com ([2607:f8b0:4864:39::10]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1x5Tyr-000000004Yw-0W1i for pgsql-hackers@postgresql.org; Sat, 12 Sep 2026 20:05:47 +0000 Received: by mail-pj2-x10.google.com with SMTP id 98e67ed59e1d1-396ccc09d65so836836a91.3 for ; Sat, 12 Sep 2026 13:05:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; t=1789243543; x=1789848343; darn=postgresql.org; h=user-agent:in-reply-to:content-disposition:content-type :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to:content-type; bh=AQmKkww7Sa0uL757cwFC5YselwIna1MZeLs7B/ZBlIE=; b=Juh0d08pabxYz4NbRtDItEjUSifDoc9TZ7EQm9fVsRSO2erMZIH8eOPNjW94foNDLd EEOVbF5VFMRFnMkPcrQR3DTyiko2nTZyPWwwqgs0fYA4Jl+55VxZ0Wne7VKdVE3zKPqe Q01/5t/HWzqyHVlevu9/S3d9G9gbyPeiaekF0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789243543; x=1789848343; h=user-agent:in-reply-to:content-disposition:content-type :mime-version:references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=AQmKkww7Sa0uL757cwFC5YselwIna1MZeLs7B/ZBlIE=; b=Hw0d4Z4MiXuru15wp6gwWezdSFZEVQ4WrjY79IUvycFFyuilo3tKCgTjxCp1SQS1D1 VMZFBGJYHG3iWDhspR3wADlrrINMLh1Aw/c8MnUWTxvl6HXiss6H1ScV2132DdJIBmoS EzQIWVYmyAzXjbej2ng4+pc9L6ZcsATtvhQh7K/hXggTmNgPCUXwOVYb1fHy7TuKQyUQ c358mY5DyWBp0xUpz8VnuuRdK96SioPL3nKmuyEKMKDyw9fKhESfkPeKLGVoF7y56/db QJXHZSxpr/2s5Qxze4LRoLW1WizuXWwP6i6GX1XeQ0gHhM6dI8jWODT+5o5vxY4NNj85 cswQ== X-Forwarded-Encrypted: i=1; AKwUvBwetpXIBHDEg26M+HyjTvUHSTxqJ5caH0yfRRLqv4cFyGAdCuvUa0FYijSoH73+5d5v4xw5O2S6KKwg4UHK@postgresql.org X-Gm-Message-State: AFuF++n1yvxVJ+u4cTbk4IOBN6B4tHPfLlz8TiivDYbiA8xN85BfTCeX V7C4QPeLre+atG74ADENU7OYKyVA08EpP0FwWA1RlojEmTR3K3zHOLur8U6JBOCNzw== X-Gm-Gg: AYBFou0UlhVOTv0qeB+e1qdjQKOoWWpbkrmMjjnrUCSVkrNIOCHFNFDj/HZRYeBbAQf l02YJS7TQDJ7eKaoukcGtWUwPIVCPUfV7UjVrznCLNG+d6cHXIbO9dKucWY6vuwO0INQ9wrHePm B7xsLmaE+EgtSjLZ5IOFu+wJyZYHm9sMbkAGIM6wWmO1X3DPcBj2ddlLREE7UND3qjm7EaMKZ96 xpGzthSP5keiGVTQ4YsfnUyIcWnFSHfwasbEIEWTJBXnnFv/1UuuHMhoVTus+NdeuCfFLuFMXQ7 m5FEw99DqQ6760PEtDwHPeO/o33j24s/rR7+vr3tgEZ6CycncqU5V7vZxDO+PMygWz47GHY+38Z pzG/+rQspLqbVjY0dSfobUGT6mMDd1derpKOZjjePoxPSLSEyhHo7+Qzxtq8/KSNFzkSw4+tPUe vRnzX+K6Dp/uAZP45VU99Akv930noANRCwXZsSxONcNlVZOKQDJ11zWDinWPU3HBASLoiQpwUGS FlYjZbiSchTi+1pLvp52RCptEToBkM0 X-Received: by 2002:a17:90b:540d:b0:398:ba96:1afd with SMTP id 98e67ed59e1d1-39d9bee4822mr18002050a91.8.1789243543350; Sat, 12 Sep 2026 13:05:43 -0700 (PDT) Received: from microsoft.com (c-73-15-160-255.hsd1.ca.comcast.net. [73.15.160.255]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-14365b347e6sm13515766c88.4.2026.09.12.13.05.42 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sat, 12 Sep 2026 13:05:42 -0700 (PDT) Date: Sat, 12 Sep 2026 13:05:40 -0700 From: Noah Misch To: Alexander Korotkov Cc: Melanie Plageman , Alexey Makhmutov , Andrey Borodin , pgsql-hackers@postgresql.org Subject: Re: Two issues leading to discrepancies in FSM data on the standby server Message-ID: <20260912200540.1b.noahmisch@microsoft.com> References: <596c4f1c-f966-4512-b9c9-dd8fbcaf0928@postgrespro.ru> <6A6138F4-8D6F-463D-9ECC-38C0881308FE@yandex-team.ru> <60b79f39-69e5-4c73-a708-6ef1fd5e7980@postgrespro.ru> <20260901211837.f6.noahmisch@microsoft.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/2.3.0 (2026-01-25) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, Sep 07, 2026 at 06:22:22PM +0300, Alexander Korotkov wrote: > 0002 is patch for FSM readme to highlight this aspect > > I'm going to push (and backpatch) 0001. 0002 needs review. > Subject: [PATCH v1 2/2] Say in the FSM README why its hint writes still need > full page images > +That RBM_ZERO_ON_ERROR is a property of this directory, not of the FSM fork > +itself. The files themselves are ordinary relation files, and plenty of code > +outside freespace.c reads them and does verify checksums: > +RelationCopyStorage(), which ALTER TABLE ... SET TABLESPACE runs over every > +fork; the read stream in RelationCopyStorageUsingBuffer(), used by > +CREATE DATABASE ... STRATEGY = wal_log; and the checksum verification in base > +backups and in pg_checksums. The last two are the reason this cannot simply be > +relaxed: an external verification tool has no way to tell a tear that we > +consider harmless from one caused by failing storage, so making it accept > +the former blinds it to the latter. One could relax the "last two" by having those tools skip checksum verification for *_fsm files, so let's not claim it's infeasible. It's true that this could miss failing-storage evidence that coincidentally landed in FSM, but accepting that could be the right thing someday. Other than that, I agree with this README change. Thanks.