]> granicus.if.org Git - postgresql/commitdiff
pg_resetxlog specifies log location in hex; more pg_upgrade testing
authorBruce Momjian <bruce@momjian.us>
Fri, 11 Jan 2002 06:33:01 +0000 (06:33 +0000)
committerBruce Momjian <bruce@momjian.us>
Fri, 11 Jan 2002 06:33:01 +0000 (06:33 +0000)
improvments.

contrib/pg_resetxlog/pg_resetxlog.c
src/bin/pg_dump/pg_upgrade

index 5fde41f7c83971c358543ff8aedd49cb38102297..21af7bee371b21e6266455a246a78bddfbd0208f 100644 (file)
@@ -23,7 +23,7 @@
  * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $Header: /cvsroot/pgsql/contrib/pg_resetxlog/Attic/pg_resetxlog.c,v 1.15 2002/01/10 23:46:13 momjian Exp $
+ * $Header: /cvsroot/pgsql/contrib/pg_resetxlog/Attic/pg_resetxlog.c,v 1.16 2002/01/11 06:33:01 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -482,7 +482,7 @@ usage(void)
                        "  -f\t  force update to be done\n"
                        "  -n\t  no update, just show extracted pg_control values (for testing)\n"
                        "  -x XID  set XID in pg_control\n"
-                       "  -l log_id offset   set checkpoint location in pg_control\n");
+                       "  -l log_id offset   set hex checkpoint location in pg_control\n");
        exit(1);
 }
 
@@ -523,11 +523,11 @@ main(int argc, char **argv)
                        argn++;
                        if (argn == argc)
                                usage();
-                       set_checkpoint.xlogid = strtoul(argv[argn], NULL, 0);
+                       set_checkpoint.xlogid = strtoul(argv[argn], NULL, 16);
                        argn++;
                        if (argn == argc)
                                usage();
-                       set_checkpoint.xrecoff = strtoul(argv[argn], NULL, 0);
+                       set_checkpoint.xrecoff = strtoul(argv[argn], NULL, 16);
                        if (set_checkpoint.xlogid == 0 &&
                                set_checkpoint.xrecoff == 0)
                        {
index 0dbb489f8ff28e11328d11b215bbff275ee92160..e893dbfc92f7a9705262b2ed75928ce25c9cb2c1 100755 (executable)
@@ -3,7 +3,9 @@
 # pg_upgrade: update a database without needing a full dump/reload cycle.
 # CAUTION: Read the manual page before trying to use this!
 
-# $Header: /cvsroot/pgsql/src/bin/pg_dump/Attic/pg_upgrade,v 1.26 2002/01/11 06:08:02 momjian Exp $
+#set -x
+
+# $Header: /cvsroot/pgsql/src/bin/pg_dump/Attic/pg_upgrade,v 1.27 2002/01/11 06:33:01 momjian Exp $
 #
 # NOTE: we must be sure to update the version-checking code a few dozen lines
 # below for each new PostgreSQL release.
@@ -106,7 +108,7 @@ Install it from pgsql/contrib/pg_resetxlog and continue.;  exiting" 1>&2
        exit 1
 fi
 
-if ! pg_resetxlog -x | grep -q XID
+if ! pg_resetxlog -x 2>&1 | grep -q XID
 then   echo "Old version of pg_resetxlog found in path.
 Install a newer version from pgsql/contrib/pg_resetxlog.;  exiting" 1>&2
        exit 1
@@ -261,7 +263,7 @@ fi
 
 # Set checkpoint location of new database
 
-pg_resetxlog -l `echo "$CHKPOINT | tr '/' ' '` data
+pg_resetxlog -l `echo "$CHKPOINT" | tr '/' ' '` data
 if [ "$?" -ne 0 ]
 then   echo "Unable to set new checkpoint location.;  exiting" 1>&2
        exit 1
@@ -278,7 +280,7 @@ fi
 # Set sequence values for 7.1-version sequences, which were int4.
 
 if [ "$SRC_VERSION" = "7.1" ]
-else   echo "Set int8 sequence values from 7.1..."
+then   echo "Set int8 sequence values from 7.1..."
 
        psql -d template1 -At -c "SELECT datname FROM pg_database" | 
        while read DB
@@ -355,10 +357,11 @@ SET relkind = 'S'
 WHERE relname = '$SEQUENCE';
 
 SQL_END
-               if [ $? -ne 0 ]
-               then    echo "There were errors during int4 sequence restore.
-       $0 aborted." 1>&2
-                       exit 1
+                       if [ $? -ne 0 ]
+                       then    echo "There were errors during int4 sequence restore.
+$0 aborted." 1>&2
+                               exit 1
+                       fi
                done
        done
 fi