Re: pg_upgrade bug found!

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: pg_upgrade bug found!
Дата
Msg-id 201104081903.p38J3Ib10876@momjian.us
обсуждение исходный текст
Ответ на Re: pg_upgrade bug found!  (Stephen Frost <sfrost@snowman.net>)
Ответы Re: pg_upgrade bug found!  (Stephen Frost <sfrost@snowman.net>)
Re: pg_upgrade bug found!  (Jeff Davis <pgsql@j-davis.com>)
Список pgsql-hackers
Stephen Frost wrote:
-- Start of PGP signed section.
> Bruce,
> 
> * Bruce Momjian (bruce@momjian.us) wrote:
> > OK, here is a draft email announcement:
> 
> Couple suggestions (also on IRC):

Yes, I like your version better;  I did adjust the wording of the last
sentence to mention it is really the release, not the new pg_upgrade,
which fixes the problem because the fixes are in pg_dump, and hence a
new pg_upgrade binary will not work;  you need a new install.

---------------------------------------------------------------------------

A bug has been discovered in all released versions of pg_upgrade and
(formerly) pg_migrator.  Anyone who has used pg_upgrade or pg_migrator
should take the following corrective actions as soon as possible.

This bug can cause queries to return the following error:
ERROR: could not access status of transaction ######DETAIL: could not open file "pg_clog/####": No such file or
directory=20

This error prevents access to very wide values stored in the database.
To prevent such failures users need to run the following psql script,
as the superuser, in all upgraded databases as soon as possible:
-- This script fixes data in pre-PG 9.0.4 and pre-8.4.8-- servers that was upgraded by pg_upgrade and pg_migrator.--
Runthe script using psql for every database in the cluster-- except 'template0', e.g.:--     psql -U postgres -a -f
pg_upgrade_fix.sqldbname-- This must be run from a writable directory.-- It will not lock any tables but will generate
I/O.--CREATETEMPORARY TABLE pg_upgrade_fix AS    SELECT 'VACUUM FREEZE pg_toast.' || c.relname || ';'    FROM
pg_classc, pg_namespace n=20    WHERE     c.relnamespace =3D n.oid AND=20        n.nspname =3D 'pg_toast' AND
c.relkind=3D 't'    ORDER by c.oid;\copy pg_upgrade_fix TO 'pg_upgrade_tmp.sql';\i pg_upgrade_tmp.sql
 

A fix will be included in upcoming Postgres releases 8.4.8 and 9.0.4.
These releases will remove the need for the above script by correctly
updating all TOAST tables in the migrated databases.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: sync rep and smart shutdown
Следующее
От: Stephen Frost
Дата:
Сообщение: Re: pg_upgrade bug found!