mirror of https://github.com/postgres/postgres
pg_resetxlog specifies log location in hex; more pg_upgrade testing
improvments.
This commit is contained in:
parent
ba3231a2a0
commit
37c9346ef2
|
@ -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)
|
||||
{
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue