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 1vqeig-00FDc6-1J for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Feb 2026 21:59:31 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vqeif-00BWS6-1B for pgsql-hackers@arkaria.postgresql.org; Thu, 12 Feb 2026 21:59:30 +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 1vqeif-00BWRx-0D for pgsql-hackers@lists.postgresql.org; Thu, 12 Feb 2026 21:59:29 +0000 Received: from mail-ot1-x335.google.com ([2607:f8b0:4864:20::335]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vqeid-00000000NzZ-420I for pgsql-hackers@lists.postgresql.org; Thu, 12 Feb 2026 21:59:29 +0000 Received: by mail-ot1-x335.google.com with SMTP id 46e09a7af769-7d44b2df00aso164343a34.3 for ; Thu, 12 Feb 2026 13:59:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770933566; x=1771538366; darn=lists.postgresql.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=wJuXIgmDLAKfv9oMPfUuj6eUKWglR7wG1pFld+xtoJQ=; b=I5u1PFD/ZdyJUj3InpZRo7E4SE+aSkrC/UYG3NVko3mZ0e8BdMb1GITvHlNSQHlXsD B9bSd7ksW+BjMwKig3smiXl5yx4TcEj4ZpHeHp+jPlCa5AbVrgfbZ8Lf+IBwXB0Y7kXJ Td/2ZvK98BSnrXv6GhPLGub/WWCj4EN9Rl1N77VuouWrLk7gQIjm1tMkKFZ54XJHXM7X Qo5adIZGR3frhsCzJa0k8gCXqfY4SL7mxpLXN81tEYRHiWvbZQ9/nRgwILp2IjK2Xo4X xySfj14q4c4ZauKWzJBsel32NkRl1EWFuAAPuZ87U3U1zkUV2Xtmaz3lv2EgoRvt+V6q fLMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770933566; x=1771538366; h=in-reply-to:content-disposition: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; bh=wJuXIgmDLAKfv9oMPfUuj6eUKWglR7wG1pFld+xtoJQ=; b=TE28S79DFqayA4wImAEdRQ5uFYLIrFGEkLT5mxCXYzRZjitSulQRRfD6VAWNsQn8nk f/kwmsepay5mP6VicO8zcKz9kwu9YGBbQA9DPnEVi36OuaPt+wyd+M5k4f9AzkUQBE1K SNOM3G7JP0xbHG9N/c74e7Pxezx6VktAXQmkOi1KXTghmIxzSJww0G67pI0DitbhkNtu eGTew9bcDLW8mX0/qQ1opi2WH8gs9UYTCeOGQUgJxqVkcbr9G3dFHzKoo3Yx0aF7hpcB tDpwtJpKkzuHvNm0x/8md45Ha8dJwNJb6tDRCT7eCF333gK3CWUHbEctydDerNCejEsE Uu6A== X-Forwarded-Encrypted: i=1; AJvYcCUYXNe8G4CmQFpxhj8jTb8KoidkrakpRXGCWruuhtaN5VmiXwSmxrKSknVkvdUruK72RDtNUN864y9ojKHS@lists.postgresql.org X-Gm-Message-State: AOJu0YyHThj7jWY8RTGjArqvsk7SusF7HpyquwfjEPus8soafwTqTKqL GGyWJB3Ia1JwEItoWQJYe5XNd7Q8tX4JESC9XkeEkrLV/9yjHs/JTJVk X-Gm-Gg: AZuq6aL1flWD/4jB1bM4t+3WMXheQSjyhJweXWiqL40t2XICTi/xEQB4qnzzcTRJUpN aVDURfOawVYL5YYROEqyjsodNZun8RqM4X54Q7tG22URtWbA+nXISJsbCOT9MPYRxFAwrRXZEce UtY/T1/gAnUKyE5wsBlqcrEtCuWwmZ5ZMDHuUSa8N8huyeyPoj5xvUJu3YKWhQlSNh9BzpS2F24 GO5kTNn4+WPKqvGFapdfb8yzC9SsmF31nSB41N+/5L34k4qebfBArllAFU2lK0albeE2uwbHluN XfsynP5u+NDqcoIgPzcAGY4O9Li/csiiUdzfTrTZIMRb0yYtqvv+EVBqtLvcyD2xmvokW81kBn5 8a+A1nGyc2puLcYq8rTeeWl3xHBOzVsSpJ4XiA6Hvu/D2g253EuanfrCIYIEiLsGrdbcjgsz+1E +sf1K+PKtwVaIa9EOVDCnBP8AGEeuNGJm0NEJbqSpEHyixFNSgsoJa+6vGCk8zOeTMEdkNzmBRJ hPOyTwdad6Nf6OW X-Received: by 2002:a05:6830:2a11:b0:7cf:da7d:6757 with SMTP id 46e09a7af769-7d4c2fff0c3mr273272a34.11.1770933566243; Thu, 12 Feb 2026 13:59:26 -0800 (PST) Received: from nathan (162-195-168-172.lightspeed.stlsmo.sbcglobal.net. [162.195.168.172]) by smtp.gmail.com with ESMTPSA id 46e09a7af769-7d4a76f9483sm4937906a34.20.2026.02.12.13.59.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Feb 2026 13:59:25 -0800 (PST) Date: Thu, 12 Feb 2026 15:59:24 -0600 From: Nathan Bossart To: Andres Freund Cc: Michael Paquier , Tom Lane , Nitin Motiani , Hannu Krosing , PostgreSQL Hackers Subject: Re: pg_upgrade: transfer pg_largeobject_metadata's files when possible Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, Feb 12, 2026 at 04:46:30PM -0500, Andres Freund wrote: > On 2026-02-11 15:00:51 -0600, Nathan Bossart wrote: >> This was a little more painful than I expected, but this seems to be what >> is required to allow COPY-ing pg_largeobject_metadata during binary >> upgrades from < v12. > > Nice! Thanks for looking. > Not really the fault of this patch, but it seems somewhat grotty that this has > binary upgrade specific code in this place. I was certainly confused when > first trying to use pg_dump in binary upgrade mode with large objects, because > no data was dumped when using plain text mode, which is what I had been using > for simplicity... Yeah, this has been an annoyance while hacking in this area. I haven't looked into what it'd take to fix it, though. > I guess you could instead generate a COPY using WITH OIDS. But it's probably > not worth having that path, given we already need to support COPY (SELECT ..). Ah, I forgot all about that COPY option... > as we'd just include the oid column without needing to somehow include it in > the attribute list. > > [...] > > I guess WITH OIDs also would avoid the need for this. Will give it a try. -- nathan