From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Bruce Momjian <bruce(at)momjian(dot)us>, pgsql-hackers(at)postgreSQL(dot)org |
Subject: | Re: Typed-tables patch broke pg_upgrade |
Date: | 2011-02-10 04:31:38 |
Message-ID: | 1297312298.25615.2.camel@vanquo.pezone.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On ons, 2011-02-09 at 18:43 -0500, Tom Lane wrote:
> I find that pg_upgrade fails in HEAD when asked to do a 9.1-to-9.1
> upgrade of the regression database. It gets to this bit of the
> restore script:
>
> CREATE TABLE test_tbl2 OF public.test_type2;
>
> -- For binary upgrade, recreate dropped column.
> UPDATE pg_catalog.pg_attribute
> SET attlen = -1, attalign = 'i', attbyval = false
> WHERE attname = '........pg.dropped.2........'
> AND attrelid = 'test_tbl2'::pg_catalog.regclass;
> ALTER TABLE ONLY test_tbl2 DROP COLUMN "........pg.dropped.2........";
>
> and fails with
>
> ERROR: cannot drop column from typed table
>
> which probably is because test_type2 has a dropped column.
It should call
ALTER TYPE test_type2 DROP ATTRIBUTE xyz CASCADE;
instead. That will propagate to the table.
I'm not sure though, whether a composite type preserves the dropped
attribute for re-dropping in this case.
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2011-02-10 04:32:06 | Re: Typed-tables patch broke pg_upgrade |
Previous Message | Bruce Momjian | 2011-02-10 04:16:25 | Re: Typed-tables patch broke pg_upgrade |