Re: pg_upgrade version checking questions - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: pg_upgrade version checking questions
Date
Msg-id 29b364fe-b1f9-5171-6f78-1f01a94244ac@2ndquadrant.com
Whole thread Raw
In response to Re: pg_upgrade version checking questions  (Daniel Gustafsson <daniel@yesql.se>)
Responses Re: pg_upgrade version checking questions  (Daniel Gustafsson <daniel@yesql.se>)
List pgsql-hackers
On 2019-04-04 15:40, Daniel Gustafsson wrote:
> On Wednesday, March 27, 2019 1:43 PM, Christoph Berg <myon@debian.org> wrote:
> 
>> Re: Daniel Gustafsson 2019-03-26
pC-NMmh4vQLQP76YTwY4AuoD4OdNw9egikekyQpXFpgqmTlGjIZXOTd2W5RDZPpRski5N3ADRrLYgLk6QUuvmuT5fWC9acPAYyDU1AVxJcU=@yesql.se
>>
>>> 0003 - Make -B default to CWD and remove the exec_path check
>>> Defaulting to CWD for the new bindir has the side effect that the default
>>> sockdir is in the bin/ directory which may be less optimal.
>>
>> Hmm, I would have thought that the default for the new bindir is the
>> directory where pg_upgrade is located, not the CWD, which is likely to
>> be ~postgres or the like?
> 
> Yes, thinking on it that's obviously better.  The attached v2 repurposes the
> find_my_exec() check to make the current directory of pg_upgrade the default
> for new_cluster.bindir (the other two patches are left as they were).

0001-Only-allow-upgrades-by-the-same-exact-version-new-v2.patch

I don't understand what this does.  Please explain.


0002-Check-all-used-executables-v2.patch

I think we'd also need a check for pg_controldata.

Perhaps this comment could be improved:

/* these are only needed in the new cluster */

to

/* these are only needed for the target version */

(pg_dump runs on the old cluster but has to be of the new version.)


0003-Default-new-bindir-to-exec_path-v2.patch

I don't like how the find_my_exec() code has been moved around.  That
makes the modularity of the code worse.  Let's keep it where it was and
then structure it like this:

if -B was given:
    new_cluster.bindir = what was given for -B
else:
    # existing block

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: POC: converting Lists into arrays
Next
From: Amit Kapila
Date:
Subject: Re: POC: Cleaning up orphaned files using undo logs