Re: pg_upgrade does not completely honor --new-port - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: pg_upgrade does not completely honor --new-port
Date
Msg-id 20121003011852.GG30089@momjian.us
Whole thread Raw
In response to Re: pg_upgrade does not completely honor --new-port  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
Applied to head and 9.2.

---------------------------------------------------------------------------

On Wed, Sep 26, 2012 at 10:06:50PM -0400, Bruce Momjian wrote:
> On Tue, Sep 25, 2012 at 05:36:54PM +0300, Devrim Gunduz wrote:
> > 
> > Hi,
> > 
> > I just performed a test upgrade from 9.1 to 9.2, and used --new-port
> > variable. However, the analyze_new_cluster.sh does not include the new
> > port, thus when I run it, it fails. Any chance to add the port number to
> > the script?
> 
> Well, the reason people normally use the port number is to do a live
> check, but obviously when the script is created it isn't doing a check. 
> I am worried that if I do embed the port number in there, then if they
> change the port after the upgrade, they now can't use the script.  I
> assume users would have PGPORT set before running the script, no?
> 
> > Also, is it worth to add the value specified in --new-bindir as a prefix
> > to vacuumdb command in the same script?
> 
> Wow, I never thought of adding a path to those scripts, but it certainly
> makes sense.  I have created the attached patch which does this.
> 
> -- 
>   Bruce Momjian  <bruce@momjian.us>        http://momjian.us
>   EnterpriseDB                             http://enterprisedb.com
> 
>   + It's impossible for everything to be true. +

> diff --git a/contrib/pg_upgrade/check.c b/contrib/pg_upgrade/check.c
> index bed10f8..2785eb7 100644
> --- a/contrib/pg_upgrade/check.c
> +++ b/contrib/pg_upgrade/check.c
> @@ -477,7 +477,7 @@ create_script_for_cluster_analyze(char **analyze_script_file_name)
>              ECHO_QUOTE, ECHO_QUOTE);
>      fprintf(script, "echo %sthis script and run:%s\n",
>              ECHO_QUOTE, ECHO_QUOTE);
> -    fprintf(script, "echo %s    vacuumdb --all %s%s\n", ECHO_QUOTE,
> +    fprintf(script, "echo %s    \"%s/vacuumdb\" --all %s%s\n", ECHO_QUOTE, new_cluster.bindir,
>      /* Did we copy the free space files? */
>              (GET_MAJOR_VERSION(old_cluster.major_version) >= 804) ?
>              "--analyze-only" : "--analyze", ECHO_QUOTE);
> @@ -498,7 +498,7 @@ create_script_for_cluster_analyze(char **analyze_script_file_name)
>              ECHO_QUOTE, ECHO_QUOTE);
>      fprintf(script, "echo %s--------------------------------------------------%s\n",
>              ECHO_QUOTE, ECHO_QUOTE);
> -    fprintf(script, "vacuumdb --all --analyze-only\n");
> +    fprintf(script, "\"%s/vacuumdb\" --all --analyze-only\n", new_cluster.bindir);
>      fprintf(script, "echo%s\n", ECHO_BLANK);
>      fprintf(script, "echo %sThe server is now available with minimal optimizer statistics.%s\n",
>              ECHO_QUOTE, ECHO_QUOTE);
> @@ -519,7 +519,7 @@ create_script_for_cluster_analyze(char **analyze_script_file_name)
>              ECHO_QUOTE, ECHO_QUOTE);
>      fprintf(script, "echo %s---------------------------------------------------%s\n",
>              ECHO_QUOTE, ECHO_QUOTE);
> -    fprintf(script, "vacuumdb --all --analyze-only\n");
> +    fprintf(script, "\"%s/vacuumdb\" --all --analyze-only\n", new_cluster.bindir);
>      fprintf(script, "echo%s\n\n", ECHO_BLANK);
>  
>  #ifndef WIN32
> @@ -532,7 +532,7 @@ create_script_for_cluster_analyze(char **analyze_script_file_name)
>              ECHO_QUOTE, ECHO_QUOTE);
>      fprintf(script, "echo %s-------------------------------------------------------------%s\n",
>              ECHO_QUOTE, ECHO_QUOTE);
> -    fprintf(script, "vacuumdb --all %s\n",
> +    fprintf(script, "\"%s/vacuumdb\" --all %s\n", new_cluster.bindir,
>      /* Did we copy the free space files? */
>              (GET_MAJOR_VERSION(old_cluster.major_version) >= 804) ?
>              "--analyze-only" : "--analyze");

> 
> -- 
> Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers


--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +



pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Support for REINDEX CONCURRENTLY
Next
From: Alvaro Herrera
Date:
Subject: Re: [9.1] 2 bugs with extensions