Re: teach pg_upgrade to handle in-place tablespaces

From: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: teach pg_upgrade to handle in-place tablespaces
Date: 2025-07-22 00:16:12
Message-ID: CADkLM=etS=Yevibo_zfPMicpeyVR0q=D87e1Q0EHe1p3m2xiDA@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jul 1, 2025 at 4:06 PM Nathan Bossart <nathandbossart(at)gmail(dot)com>
wrote:

> rebased
>
> --
> nathan

Everything here makes sense to me, but I do have one question:

In src/bin/pg_upgrade/info.c
@@ -616,11 +630,21 @@ process_rel_infos(DbInfo *dbinfo, PGresult *res, void
*arg)
+ if (inplace)
+ tablespace = psprintf("%s/%s",
+ os_info.running_cluster->pgdata,
+ PQgetvalue(res, relnum, i_spclocation));
+ else
+ tablespace = PQgetvalue(res, relnum, i_spclocation);

I'm sure it's no big deal, but we've already PQgetvalue() fetched that once
for spcloc, and we're going to fetch it again no matter what the value of
inplace is. Is there a reason to not reuse spcloc?

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2025-07-22 00:53:39 Re: Non-text mode for pg_dumpall
Previous Message Andres Freund 2025-07-21 23:49:09 Re: Parallel heap vacuum