A note on pg_upgrade and missing "pg_upgrade_support.so"
Hi
Just a quick note for anyone else building 9.0 from source and experimenting
with pg_upgrade - if you get a message like the following when running the
pg_upgrade binary:
pg_upgrade_support.so must be created and installed in
/path/to/pg90/lib/postgresql/pg_upgrade_support.so
you need to build the the separate "pg_upgrade_support" as well.
Also, the current first hit on Google for "pg_upgrade" is this page:
http://www.postgresql.org/files/documentation/books/aw_pgsql/node267.html
which is hopelessly outdated (the "pg_upgrade" utility described appears to
have been obsoleted 5 years or so ago, see:
http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/contrib/pg_upgrade/Attic/pg_upgrade
)
HTH
Ian Barwick
Ian Barwick wrote:
Hi
Just a quick note for anyone else building 9.0 from source and experimenting
with pg_upgrade - if you get a message like the following when running the
pg_upgrade binary:pg_upgrade_support.so must be created and installed in
/path/to/pg90/lib/postgresql/pg_upgrade_support.soyou need to build the the separate "pg_upgrade_support" as well.
Well, that is step #4:
http://www.postgresql.org/docs/9.0/static/pgupgrade.html
4.
Install pg_upgrade
Install pg_upgrade and pg_upgrade_support in the new PostgreSQL cluster
Was that not clear enough?
Also, the current first hit on Google for "pg_upgrade" is this page:
http://www.postgresql.org/files/documentation/books/aw_pgsql/node267.html
which is hopelessly outdated (the "pg_upgrade" utility described appears to
have been obsoleted 5 years or so ago, see:
http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/contrib/pg_upgrade/Attic/pg_upgrade
)
Yes, that is all very old. I hope that will change now that 9.0 is
released.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
Bruce Momjian wrote:
Ian Barwick wrote:
Hi
Just a quick note for anyone else building 9.0 from source and experimenting
with pg_upgrade - if you get a message like the following when running the
pg_upgrade binary:pg_upgrade_support.so must be created and installed in
/path/to/pg90/lib/postgresql/pg_upgrade_support.soyou need to build the the separate "pg_upgrade_support" as well.
Well, that is step #4:
http://www.postgresql.org/docs/9.0/static/pgupgrade.html
4.Install pg_upgrade
Install pg_upgrade and pg_upgrade_support in the new PostgreSQL cluster
Was that not clear enough?
I hope my comment didn't sound insulting. I really want to know how
that doc item can be made clearer.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +
2010/9/21 Bruce Momjian <bruce@momjian.us>:
Bruce Momjian wrote:
Ian Barwick wrote:
Hi
Just a quick note for anyone else building 9.0 from source and experimenting
with pg_upgrade - if you get a message like the following when running the
pg_upgrade binary:pg_upgrade_support.so must be created and installed in
/path/to/pg90/lib/postgresql/pg_upgrade_support.soyou need to build the the separate "pg_upgrade_support" as well.
Well, that is step #4:
http://www.postgresql.org/docs/9.0/static/pgupgrade.html
4.Install pg_upgrade
Install pg_upgrade and pg_upgrade_support in the new PostgreSQL cluster
Was that not clear enough?
I hope my comment didn't sound insulting. I really want to know how
that doc item can be made clearer.
No insult taken :) .With the benefit of hindsight it's plenty clear;
the problem was:
a) I was doing this in a hurry (had a small amount of time to kill and
a dev machine with an older beta on it)
b) got sidetracked by this thread which appears to describe the same
problem: http://archives.postgresql.org/pgsql-testers/2010-06/msg00000.php
and which was popping up pretty high in Google.
Looking over the doc page again, if scanning over it, it's a bit easy
to misread it as something like "Install pg_upgrade for pg_upgrade
support in the new PostgreSQL cluster".
To my shame I hadn't even looked at pg_upgrade before, so was coming
to it from a point of zero knowledge. How about a slightly more
pedantic phrasing such as:
------
4. Install pg_upgrade
pg_upgrade requires the installation of the contrib modules
"pg_upgrade" and "pg_upgrade_support" in the new PostgreSQL cluster
------
(maybe "pg_upgrade" and "pg_upgrade_support" could be highlighted in
some way, e.g. with the courier-style font if that fits in with the
doc functions).
Anyway, it worked fine and I have since used it to upgrade to 9.0 on
my personal "production" server with minimal downtime.
Thanks for yet another great release
Ian Barwick
Ian Barwick wrote:
Well, that is step #4:
? ? ? http://www.postgresql.org/docs/9.0/static/pgupgrade.html
? ? ? 4.? ? ? Install pg_upgrade
? ? ? Install pg_upgrade and pg_upgrade_support in the new PostgreSQL cluster
Was that not clear enough?
I hope my comment didn't sound insulting. ?I really want to know how
that doc item can be made clearer.No insult taken :) .With the benefit of hindsight it's plenty clear;
the problem was:a) I was doing this in a hurry (had a small amount of time to kill and
a dev machine with an older beta on it)
b) got sidetracked by this thread which appears to describe the same
problem: http://archives.postgresql.org/pgsql-testers/2010-06/msg00000.php
and which was popping up pretty high in Google.
Yep, we need to address this.
Looking over the doc page again, if scanning over it, it's a bit easy
to misread it as something like "Install pg_upgrade for pg_upgrade
support in the new PostgreSQL cluster".
The big problem was that the title said "Install pg_upgrade", but the
detail had you installing two things, one of which was pg_upgrade. It
was using pg_upgrade in both a generic sense, and in the
/contrib/pg_upgrade sense, which is bound to confuse, as you said.
I have attached a doc diff I backpatched to 9.0 that includes
pg_upgrade_support in the section title. This should avoid future
confusing. Thanks for your report.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://enterprisedb.com
+ It's impossible for everything to be true. +