I'm working on propagating ALTER TYPE commands to typed tables. This is currently prohibited. For example, take these regression test cases:
CREATE TYPE test_type2 AS (a int, b text); CREATE TABLE test_tbl2 OF test_type2; ALTER TYPE test_type2 ADD ATTRIBUTE c text; -- fails ALTER TYPE test_type2 ALTER ATTRIBUTE b TYPE varchar; -- fails ALTER TYPE test_type2 DROP ATTRIBUTE b; -- fails ALTER TYPE test_type2 RENAME ATTRIBUTE b TO bb; -- fails The actual implementation isn't very difficult, because the ALTER TABLE code already knows everything about recursion. Now I'm wondering what kind of syntax should be used to control this. I think you don't want to automatically propagate such innocent looking operations to tables in a potentially data-destroying manner. The natural idea would be RESTRICT/CASCADE. This is currently only associated with DROP operations, but I suppose ADD/ALTER/RENAME ATTRIBUTE x ... CASCADE doesn't sound too odd. Comments, other ideas? -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers