Bruce Momjian
ebaf648ad2
In pg_upgrade, clarify use of install_db_support_functions().
2011-01-08 09:11:48 -05:00
Bruce Momjian
a60b32b3dc
In pg_upgrade, remove unnecessary separate handling of toast tables now
...
that we restore by oid; they can be handled like regular tables when
creating the file mapping structure.
2011-01-08 08:01:52 -05:00
Bruce Momjian
133641a48e
Document why pg_upgrade preserves pg_auth.oid (because they are stored
...
in pg_largeobject_metadata).
2011-01-07 23:02:03 -05:00
Bruce Momjian
2f657e4d72
More pg_upgrade relfilenode C comments added.
2011-01-07 22:57:30 -05:00
Bruce Momjian
3095643d37
Simplify pg_upgrade C comment about what is preserved.
2011-01-07 22:46:41 -05:00
Bruce Momjian
f75383e6e8
In pg_upgrade, track only one copy of namespace/relname in FileNameMap
...
because the old and new values are identical.
2011-01-07 22:36:51 -05:00
Bruce Momjian
519c008a96
Fix C indenting in pg_upgrade function.
2011-01-07 22:01:44 -05:00
Bruce Momjian
d8d3d2a4f3
Fix pg_upgrade of large object permissions by preserving pg_auth.oid,
...
which is stored in pg_largeobject_metadata.
No backpatch to 9.0 because you can't migrate from 9.0 to 9.0 with the
same catversion (because of tablespace conflict), and a pre-9.0
migration to 9.0 has not large object permissions to migrate.
2011-01-07 21:59:29 -05:00
Bruce Momjian
2896c87ce4
Force pg_upgrade's to preserve pg_class.oid, not pg_class.relfilenode.
...
Toast tables have identical pg_class.oid and pg_class.relfilenode, but
for clarity it is good to preserve the pg_class.oid.
Update comments regarding what is preserved, and do some
variable/function renaming for clarity.
2011-01-07 21:26:13 -05:00
Bruce Momjian
46d28820b6
Improve C comments about backend variables set by pg_upgrade_support
...
functions.
2011-01-06 22:45:36 -05:00
Bruce Momjian
56a9adcb96
Rename pg_upgrade variables, for clarity.
2011-01-05 20:14:59 -05:00
Bruce Momjian
e66e43988a
Update pg_upgrade C comments.
2011-01-05 14:09:01 -05:00
Bruce Momjian
a45beaac64
Fix for recent pg_upgrade commit to fix large objects relfilenode
...
handling. (metadata user ids still an open issue).
2011-01-05 13:52:44 -05:00
Bruce Momjian
b1f2a94fa2
In pg_upgrade, adjust transfer_relfile()'s parameters to be more logical.
2011-01-05 12:07:45 -05:00
Bruce Momjian
5cff5b5779
Clarify pg_upgrade's creation of the map file structure. Also clean
...
up pg_dump's calling of pg_upgrade_support functions.
2011-01-05 11:37:08 -05:00
Bruce Momjian
3302334b48
In pg_upgrade, copy pg_largeobject_metadata and its index for 9.0+
...
servers because, like pg_largeobject, it is a system table whose
contents are not dumped by pg_dump --schema-only.
2011-01-04 23:35:49 -05:00
Bruce Momjian
0857a84498
In pg_upgrade, fix backward logging display of link operations.
2011-01-04 21:33:36 -05:00
Bruce Momjian
25cc7424e3
Simplify functions and parameters used by pg_upgrade.
2011-01-04 19:11:37 -05:00
Bruce Momjian
5d950e3b0c
Stamp copyrights for year 2011.
2011-01-01 13:18:15 -05:00
Bruce Momjian
67c9e4442f
Furter pg_upgrade optimizations to reduce function call argument count.
2011-01-01 12:28:48 -05:00
Bruce Momjian
6e6bee987f
In pg_upgrade, remove use of whichCluster, and just pass old/new cluster
...
pointers, which simplifies the code. This was not possible in 9.0 because
everything was in a single nested struct, but is possible now.
Per suggestion from Tom.
2011-01-01 12:06:36 -05:00
Bruce Momjian
f82b3e58f8
In pg_upgrade, rename "CLUSTERNAME" to "CLUSTER_NAME".
2010-12-31 20:42:29 -05:00
Tom Lane
88c803457a
Improve pg_upgrade's checks for required executables.
...
Don't insist on pg_dumpall and psql being present in the old cluster,
since they are not needed. Do insist on pg_resetxlog being present
(in both old and new), since we need it. Also check for pg_config,
but only in the new cluster. Remove the useless attempt to call
pg_config in the old cluster; we don't need to know the old value of
--pkglibdir. (In the case of a stripped-down migration installation
there might be nothing there to look at anyway, so any future change
that might reintroduce that need would have to be considered carefully.)
Per my attempts to build a minimal previous-version installation to support
pg_upgrade.
2010-12-29 13:43:53 -05:00
Bruce Momjian
16b5e08dec
Use "upgrade" in preference over "migrate" in pg_upgrade messages and
...
documentation. (Many were left over from the old pg_migrator naming.)
2010-12-15 07:11:31 -05:00
Tom Lane
3864afa1d1
Clean up some copied-and-pasted code in pg_upgrade.
...
1. Don't reimplement S_ISDIR() and S_ISREG() badly.
2. Don't reimplement access() badly.
This code appears to have been copied from ancient versions of the
corresponding backend routines, and not patched to incorporate subsequent
fixes (see my commits of 2008-03-31 and 2010-01-14 respectively).
It might be a good idea to change it to just *call* those routines,
but for now I'll just transpose these fixes over.
2010-12-11 14:17:46 -05:00
Peter Eisentraut
fc946c39ae
Remove useless whitespace at end of lines
2010-11-23 22:34:55 +02:00
Robert Haas
5aa446c961
Cleanup various comparisons with the constant "true".
...
Itagaki Takahiro, with slight modifications.
2010-11-14 21:03:48 -05:00
Robert Haas
11e482c350
Move copydir() prototype into its own header file.
...
Having this in src/include/port.h makes no sense, now that copydir.c lives
in src/backend/strorage rather than src/port. Along the way, remove an
obsolete comment from contrib/pg_upgrade that makes reference to the old
location.
2010-11-12 16:39:53 -05:00
Tom Lane
71baff1786
Fix buffer overrun in pg_upgrade.
...
Problem reported, and cause identified, by Hernan Gonzalez.
2010-11-02 17:31:41 -04:00
Tom Lane
84c123be1d
Allow new values to be added to an existing enum type.
...
After much expenditure of effort, we've got this to the point where the
performance penalty is pretty minimal in typical cases.
Andrew Dunstan, reviewed by Brendan Jurd, Dean Rasheed, and Tom Lane
2010-10-24 23:05:41 -04:00
Bruce Momjian
a52aa6c6db
Clean up pg_upgrade cache lookup code; remove useless NULL pointer tests.
2010-10-20 20:02:37 +00:00
Bruce Momjian
691a67b922
Rename pg_upgrade 'log' to 'log_opts', to avoid platform naming conflict.
2010-10-20 02:31:17 +00:00
Bruce Momjian
3325c9bddb
Further speed up pg_upgrade lookups.
2010-10-20 02:06:06 +00:00
Bruce Momjian
1c72614be7
Fix for new pg_upgrade cache code.
2010-10-20 01:24:31 +00:00
Bruce Momjian
333b4a45f1
Cache most recent relfilenode lookups, for speed, after report of
...
pg_upgrade slowness for 150k tables.
2010-10-20 00:55:16 +00:00
Bruce Momjian
ad06db2610
In pg_upgrade, use cached copy of directory listing, rather than calling
...
scandir() with a pattern for every table.
Optimization after report of pg_upgrade slowness with 150k tables.
2010-10-20 00:33:19 +00:00
Bruce Momjian
07456b45e6
Pgindent run on pg_upgrade source after restructuring.
2010-10-19 22:37:04 +00:00
Bruce Momjian
e13f7e9a71
Restructure the pg_upgrade code to use several global structures rather
...
than packing everything into 'ctx' and passing that to every function.
2010-10-19 21:38:34 +00:00
Bruce Momjian
722d5beeb2
In pg_upgrade, rename SHELL_EXT to SCRIPT_EXT, for clarity.
2010-10-19 15:57:55 +00:00
Bruce Momjian
51eeccd6cc
Add removal of PG_VERSION to optional old cluster deletion script.
...
Backpatch to 9.0.X.
2010-10-19 15:52:43 +00:00
Bruce Momjian
9df96f9bb1
In pg_upgrade, rename macro EXEC_EXT to SHELL_EXT for clarity.
...
Backpatch to 9.0.X.
2010-10-19 02:56:16 +00:00
Bruce Momjian
fe61db6f0c
Have pg_upgrade use strtoul(), not strtol().
2010-09-29 02:40:25 +00:00
Bruce Momjian
807005c024
Use macro atooid() for conversion of strings to oids, per suggestion
...
from Tom.
2010-09-28 22:11:39 +00:00
Bruce Momjian
9340fb80b1
In pg_upgrade, properly handle oids > 2^31 by using strtoul() internally
...
rather than atol().
Per report from Brian Hirt
2010-09-28 21:41:03 +00:00
Bruce Momjian
a1bb570de9
Fix leak patch that was using fclose() instead of close().
2010-09-28 21:27:32 +00:00
Bruce Momjian
f175884520
Properly close files after read file failure to prevent potential
...
resource leak. Of course, any such failure aborts pg_upgrade, but might
as well be clean about it.
Per patch from Grzegorz Ja?kiewicz.
2010-09-28 19:28:34 +00:00
Magnus Hagander
fe9b36fd59
Convert cvsignore to gitignore, and add .gitignore for build targets.
2010-09-22 12:57:04 +02:00
Magnus Hagander
9f2e211386
Remove cvs keywords from all files.
2010-09-20 22:08:53 +02:00
Bruce Momjian
c5d94a34fb
Modify pg_upgrade to set/restore all environment variables related to
...
collation/encoding to match English when reading controldata. This now
matches the English variable setting used by pg_regress.c.
Backpatch to 9.0.X.
2010-09-07 14:10:30 +00:00
Peter Eisentraut
3f11971916
Remove extra newlines at end and beginning of files, add missing newlines
...
at end of files.
2010-08-19 05:57:36 +00:00