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) 1996-2001, PostgreSQL Global Development Group
|
||||||
* Portions Copyright (c) 1994, Regents of the University of California
|
* 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"
|
" -f\t force update to be done\n"
|
||||||
" -n\t no update, just show extracted pg_control values (for testing)\n"
|
" -n\t no update, just show extracted pg_control values (for testing)\n"
|
||||||
" -x XID set XID in pg_control\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);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -523,11 +523,11 @@ main(int argc, char **argv)
|
|||||||
argn++;
|
argn++;
|
||||||
if (argn == argc)
|
if (argn == argc)
|
||||||
usage();
|
usage();
|
||||||
set_checkpoint.xlogid = strtoul(argv[argn], NULL, 0);
|
set_checkpoint.xlogid = strtoul(argv[argn], NULL, 16);
|
||||||
argn++;
|
argn++;
|
||||||
if (argn == argc)
|
if (argn == argc)
|
||||||
usage();
|
usage();
|
||||||
set_checkpoint.xrecoff = strtoul(argv[argn], NULL, 0);
|
set_checkpoint.xrecoff = strtoul(argv[argn], NULL, 16);
|
||||||
if (set_checkpoint.xlogid == 0 &&
|
if (set_checkpoint.xlogid == 0 &&
|
||||||
set_checkpoint.xrecoff == 0)
|
set_checkpoint.xrecoff == 0)
|
||||||
{
|
{
|
||||||
|
@ -3,7 +3,9 @@
|
|||||||
# pg_upgrade: update a database without needing a full dump/reload cycle.
|
# pg_upgrade: update a database without needing a full dump/reload cycle.
|
||||||
# CAUTION: Read the manual page before trying to use this!
|
# 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
|
# NOTE: we must be sure to update the version-checking code a few dozen lines
|
||||||
# below for each new PostgreSQL release.
|
# below for each new PostgreSQL release.
|
||||||
@ -106,7 +108,7 @@ Install it from pgsql/contrib/pg_resetxlog and continue.; exiting" 1>&2
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
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.
|
then echo "Old version of pg_resetxlog found in path.
|
||||||
Install a newer version from pgsql/contrib/pg_resetxlog.; exiting" 1>&2
|
Install a newer version from pgsql/contrib/pg_resetxlog.; exiting" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
@ -261,7 +263,7 @@ fi
|
|||||||
|
|
||||||
# Set checkpoint location of new database
|
# Set checkpoint location of new database
|
||||||
|
|
||||||
pg_resetxlog -l `echo "$CHKPOINT | tr '/' ' '` data
|
pg_resetxlog -l `echo "$CHKPOINT" | tr '/' ' '` data
|
||||||
if [ "$?" -ne 0 ]
|
if [ "$?" -ne 0 ]
|
||||||
then echo "Unable to set new checkpoint location.; exiting" 1>&2
|
then echo "Unable to set new checkpoint location.; exiting" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
@ -278,7 +280,7 @@ fi
|
|||||||
# Set sequence values for 7.1-version sequences, which were int4.
|
# Set sequence values for 7.1-version sequences, which were int4.
|
||||||
|
|
||||||
if [ "$SRC_VERSION" = "7.1" ]
|
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" |
|
psql -d template1 -At -c "SELECT datname FROM pg_database" |
|
||||||
while read DB
|
while read DB
|
||||||
@ -355,10 +357,11 @@ SET relkind = 'S'
|
|||||||
WHERE relname = '$SEQUENCE';
|
WHERE relname = '$SEQUENCE';
|
||||||
|
|
||||||
SQL_END
|
SQL_END
|
||||||
if [ $? -ne 0 ]
|
if [ $? -ne 0 ]
|
||||||
then echo "There were errors during int4 sequence restore.
|
then echo "There were errors during int4 sequence restore.
|
||||||
$0 aborted." 1>&2
|
$0 aborted." 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user