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 1wrslo-000Gos-2W for pgsql-hackers@arkaria.postgresql.org; Thu, 06 Aug 2026 07:44:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wrslo-003Deo-13 for pgsql-hackers@arkaria.postgresql.org; Thu, 06 Aug 2026 07:44:03 +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 1wrslo-003Deg-09 for pgsql-hackers@lists.postgresql.org; Thu, 06 Aug 2026 07:44:03 +0000 Received: from meesny.iki.fi ([2001:67c:2b0:1c1::201]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wrslj-00000000Sra-1sRf for pgsql-hackers@lists.postgresql.org; Thu, 06 Aug 2026 07:44:00 +0000 Received: from [10.0.2.15] (unknown [130.41.208.1]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange x25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: hlinnaka) by meesny.iki.fi (Postfix) with ESMTPSA id 4hFzmj02zjzyPv; Thu, 06 Aug 2026 10:43:48 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1786002229; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qy4suI9SizyeEo7LY9uiwlgzy5e4GPSBkuGrC8NKBeg=; b=ds6grmcNP8eZrEbxuyDViDZZrEQRvVa8UGDyTbFG/DFj5t0hh2SV/VgwQiXsMGgwEHkNPp d9+qO2yEZCdiXQE1E+uz9mubLeao2wet9jqjCRFJz2WekN4selnlyJub2SSyunvOLnHoBj lqcUU+PLuiB4ydCDwLQTWtEUl5XE33E= ARC-Seal: i=1; a=rsa-sha256; d=iki.fi; s=meesny; cv=none; t=1786002229; b=d3xgTEE4EaKK3uBKbI8DRvm3IAI9Mhws+poGfno5HU6yP7WebfNlespEAKVN/aJy3lwA9i AXF22vbSRV+WzBWSRnYnlnc18uyK/cr6hCwfAGYNWtYpPA87Uvr5LQw8GL/KT8CSMjo2hd tn4e92W47dUwczi/zrDbjHapxesADtA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1786002229; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=qy4suI9SizyeEo7LY9uiwlgzy5e4GPSBkuGrC8NKBeg=; b=FHBHCt1zgXZoKUpuAhyQlB4nj1dt7T55/MD9T/24pbfDpfEXMNf3D0mIZEKbxkD1Hh+vx/ oGKowAKtu8zks5fOpdLrSnmTCI0V7YRq4nUY6MNxRel9f9uIXKmZhq/AaRrGu7vHXbDetM EJHXI5bdzTi71W/nihFSmeJ2DwTK4Gs= ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=hlinnaka smtp.mailfrom=hlinnaka@iki.fi Message-ID: Date: Thu, 6 Aug 2026 10:43:47 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [Patch]The Case For WAL-Logging pg_upgrade To: John Naylor , Bohyun Lee Cc: pgsql-hackers@lists.postgresql.org References: Content-Language: en-US From: Heikki Linnakangas In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 06/08/2026 01:17, John Naylor wrote: > On Wed, Aug 5, 2026 at 9:36 PM Bohyun Lee > wrote: >> The GUCs are introduced because we cannot assume the standby's >> storage layout exactly matches the primary's, neither where the >> retained pre-upgrade directory sits, nor how its files are >> physically placed. It also depends on how the cluster intends to >> use the standby. For instance, if the operator wants to keep the >> standby as a rollback target, it may be worthwhile to use a >> different transfer mode via the newly introduced >> pg_upgrade_standby_transfer_mode GUC, which I believe is useful. >> Nevertheless, the reconstructed cluster will be logically >> identical, even if the physical representation diverges. > > Given the above design concepts, I still think WAL is fundamentally > the wrong mechanism for this. Can you elaborate? Do you think the changes that pg_upgrade makes should be written somewhere else than WAL, or is this just about the transfer mode setting, or something else? How would you do it? - Heikki