-- -- Changes induced by the type discrepancy cleanup in 5.9.1d8-5.9.1d9: -- Using consistently varchar(1000) for object types. -- ALTER TABLE cr_content_mime_type_map ALTER COLUMN content_type TYPE varchar(1000); ALTER TABLE cr_folder_type_map ALTER COLUMN content_type TYPE varchar(1000); -- ALTER TABLE cr_items ALTER COLUMN content_type TYPE varchar(1000); ALTER TABLE cr_type_children ALTER COLUMN child_type TYPE varchar(1000); ALTER TABLE cr_type_children ALTER COLUMN parent_type TYPE varchar(1000); ALTER TABLE cr_type_relations ALTER COLUMN target_type TYPE varchar(1000); ALTER TABLE cr_type_relations ALTER COLUMN content_type TYPE varchar(1000); ALTER TABLE cr_type_template_map ALTER COLUMN content_type TYPE varchar(1000); -- -- ALTER TABLE cr_items ALTER COLUMN content_type TYPE varchar(1000); --deps -- WITH RECURSIVE dependent_views AS ( SELECT c.oid::REGCLASS AS view_name FROM pg_class c WHERE c.relname = 'cr_items' UNION ALL SELECT DISTINCT r.ev_class::REGCLASS AS view_name FROM pg_depend d JOIN pg_rewrite r ON (r.oid = d.objid) JOIN dependent_views ON (dependent_views.view_name = d.refobjid) WHERE d.refobjsubid != 0 ) UPDATE pg_attribute SET atttypmod = 1000 + 4 FROM dependent_views WHERE pg_attribute.attrelid = dependent_views.view_name AND pg_attribute.attname = 'content_type';