]> granicus.if.org Git - postgresql/commitdiff
Change pg_upgrade to use port 50432 by default to avoid unintended
authorBruce Momjian <bruce@momjian.us>
Fri, 1 Jul 2011 22:17:12 +0000 (18:17 -0400)
committerBruce Momjian <bruce@momjian.us>
Fri, 1 Jul 2011 22:17:12 +0000 (18:17 -0400)
client connections during the upgrade.  Also rename data/bin/port
environment variables to being with 'PG'.  Also no longer honor PGPORT.

contrib/pg_upgrade/check.c
contrib/pg_upgrade/option.c
contrib/pg_upgrade/pg_upgrade.h
doc/src/sgml/pgupgrade.sgml

index 1ee2acac83e73ab6078de74a7cb0014dc7dab3b8..5c5ce722947c4f791d680f16671562cc3fe9bda6 100644 (file)
@@ -29,6 +29,9 @@ output_check_banner(bool *live_check)
        if (user_opts.check && is_server_running(old_cluster.pgdata))
        {
                *live_check = true;
+               if (old_cluster.port == DEF_PGUPORT)
+                       pg_log(PG_FATAL, "When checking a live old server, "
+                                  "you must specify the old server's port number.\n");
                if (old_cluster.port == new_cluster.port)
                        pg_log(PG_FATAL, "When checking a live server, "
                                   "the old and new port numbers must be different.\n");
index 4401a81562b647eabafb9fd5ea8c3aaa105c8a95..d29aad0e1dd7797db96ec5c936ff29150b76612c 100644 (file)
@@ -58,8 +58,8 @@ parseCommandLine(int argc, char *argv[])
        os_info.progname = get_progname(argv[0]);
 
        /* Process libpq env. variables; load values here for usage() output */
-       old_cluster.port = getenv("PGPORT") ? atoi(getenv("PGPORT")) : DEF_PGPORT;
-       new_cluster.port = getenv("PGPORT") ? atoi(getenv("PGPORT")) : DEF_PGPORT;
+       old_cluster.port = getenv("PGPORTOLD") ? atoi(getenv("PGPORTOLD")) : DEF_PGUPORT;
+       new_cluster.port = getenv("PGPORTNEW") ? atoi(getenv("PGPORTNEW")) : DEF_PGUPORT;
 
        os_user_effective_id = get_user_info(&os_info.user);
        /* we override just the database user name;  we got the OS id above */
@@ -203,13 +203,13 @@ parseCommandLine(int argc, char *argv[])
        }
 
        /* Get values from env if not already set */
-       check_required_directory(&old_cluster.bindir, "OLDBINDIR", "-b",
+       check_required_directory(&old_cluster.bindir, "PGBINOLD", "-b",
                                                        "old cluster binaries reside");
-       check_required_directory(&new_cluster.bindir, "NEWBINDIR", "-B",
+       check_required_directory(&new_cluster.bindir, "PGBINNEW", "-B",
                                                        "new cluster binaries reside");
-       check_required_directory(&old_cluster.pgdata, "OLDDATADIR", "-d",
+       check_required_directory(&old_cluster.pgdata, "PGDATAOLD", "-d",
                                                        "old cluster data resides");
-       check_required_directory(&new_cluster.pgdata, "NEWDATADIR", "-D",
+       check_required_directory(&new_cluster.pgdata, "PGDATANEW", "-D",
                                                        "new cluster data resides");
 }
 
@@ -254,17 +254,17 @@ For example:\n\
 or\n"), old_cluster.port, new_cluster.port, os_info.user);
 #ifndef WIN32
        printf(_("\
-  $ export OLDDATADIR=oldCluster/data\n\
-  $ export NEWDATADIR=newCluster/data\n\
-  $ export OLDBINDIR=oldCluster/bin\n\
-  $ export NEWBINDIR=newCluster/bin\n\
+  $ export PGDATAOLD=oldCluster/data\n\
+  $ export PGDATANEW=newCluster/data\n\
+  $ export PGBINOLD=oldCluster/bin\n\
+  $ export PGBINNEW=newCluster/bin\n\
   $ pg_upgrade\n"));
 #else
        printf(_("\
-  C:\\> set OLDDATADIR=oldCluster/data\n\
-  C:\\> set NEWDATADIR=newCluster/data\n\
-  C:\\> set OLDBINDIR=oldCluster/bin\n\
-  C:\\> set NEWBINDIR=newCluster/bin\n\
+  C:\\> set PGDATAOLD=oldCluster/data\n\
+  C:\\> set PGDATANEW=newCluster/data\n\
+  C:\\> set PGBINOLD=oldCluster/bin\n\
+  C:\\> set PGBINNEW=newCluster/bin\n\
   C:\\> pg_upgrade\n"));
 #endif
        printf(_("\nReport bugs to <pgsql-bugs@postgresql.org>.\n"));
index 613ddbd03ff2b6e59e99f2f053377a8dd7e75f40..4729ac39d91d5d68b45291ea387dee6af98ffcbb 100644 (file)
@@ -15,6 +15,9 @@
 
 #include "libpq-fe.h"
 
+/* Use port in the private/dynamic port number range */
+#define DEF_PGUPORT                    50432
+
 /* Allocate for null byte */
 #define USER_NAME_SIZE         128
 
index b24c1e7b981b7b68524257d256d41e987840db5b..aa633e2d41459ffba890ae694fd69644ddbecb00 100644 (file)
       <term><option>-b</option> <replaceable>old_bindir</></term>
       <term><option>--old-bindir=</option><replaceable>old_bindir</></term>
       <listitem><para>the old cluster executable directory;
-      environment variable <envar>OLDBINDIR</></para></listitem>
+      environment variable <envar>PGBINOLD</></para></listitem>
      </varlistentry>
 
      <varlistentry>
       <term><option>-B</option> <replaceable>new_bindir</></term>
       <term><option>--new-bindir=</option><replaceable>new_bindir</></term>
       <listitem><para>the new cluster executable directory;
-      environment variable <envar>NEWBINDIR</></para></listitem>
+      environment variable <envar>PGBINNEW</></para></listitem>
      </varlistentry>
 
      <varlistentry>
       <term><option>-d</option> <replaceable>old_datadir</></term>
       <term><option>--old-datadir=</option><replaceable>old_datadir</></term>
       <listitem><para>the old cluster data directory; environment
-      variable <envar>OLDDATADIR</></para></listitem>
+      variable <envar>PGDATAOLD</></para></listitem>
      </varlistentry>
 
      <varlistentry>
       <term><option>-D</option> <replaceable>new_datadir</></term>
       <term><option>--new-datadir=</option><replaceable>new_datadir</></term>
       <listitem><para>the new cluster data directory; environment
-      variable <envar>NEWDATADIR</></para></listitem>
+      variable <envar>PGDATANEW</></para></listitem>
      </varlistentry>
 
      <varlistentry>
       <term><option>-p</option> <replaceable>old_port_number</></term>
       <term><option>--old-port=</option><replaceable>old_portnum</></term>
       <listitem><para>the old cluster port number; environment
-      variable <envar>PGPORT</></para></listitem>
+      variable <envar>PGPORTOLD</></para></listitem>
      </varlistentry>
 
      <varlistentry>
       <term><option>-P</option> <replaceable>new_port_number</></term>
       <term><option>--new-port=</option><replaceable>new_portnum</></term>
       <listitem><para>the new cluster port number; environment
-      variable <envar>PGPORT</></para></listitem>
+      variable <envar>PGPORTNEW</></para></listitem>
      </varlistentry>
 
      <varlistentry>
@@ -256,8 +256,7 @@ gmake prefix=/usr/local/pgsql.new install
      so you might want to set authentication to <literal>trust</> in
      <filename>pg_hba.conf</>, or if using <literal>md5</> authentication,
      use a <filename>~/.pgpass</> file (see <xref linkend="libpq-pgpass">)
-     to avoid being prompted repeatedly for a password.  Also make sure
-     pg_upgrade is the only program that can connect to the clusters.
+     to avoid being prompted repeatedly for a password.
     </para>
    </step>
 
@@ -303,9 +302,14 @@ NET STOP pgsql-8.3  (<productname>PostgreSQL</> 8.3 and older used a different s
      copying), but you will not be able to access your old cluster
      once you start the new cluster after the upgrade.  Link mode also
      requires that the old and new cluster data directories be in the
-     same file system.  See <literal>pg_upgrade --help</> for a full
-     list of options.
-    </para>
+     same file system.
+   </para>
+
+   <para>
+    <application>pg_upgrade</> defaults to running servers on port
+    50432 to avoid unintended client connections.  See <literal>pg_upgrade
+    --help</> for a full list of options.
+   </para>
 
     <para>
      For Windows users, you must be logged into an administrative account, and