From: | Erik Wienhold <ewie(at)ewie(dot)name> |
---|---|
To: | Kouber Saparev <kouber(at)gmail(dot)com>, pgsql-admin(at)lists(dot)postgresql(dot)org |
Subject: | Re: ERROR: failed to change schema dependency for type xxx.yyy |
Date: | 2023-01-17 11:29:11 |
Message-ID: | 946179387.343291.1673954951660@office.mailbox.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
> On 17/01/2023 11:46 CET Kouber Saparev <kouber(at)gmail(dot)com> wrote:
>
> Trying to change the schema of an enumerated type results in the error below:
>
> db=# ALTER TYPE xxx.yyy SET SCHEMA zzz;
> ERROR: failed to change schema dependency for type xxx.yyy
What Postgres version are you on? I cannot reproduce the error on 14.6:
CREATE SCHEMA xxx;
CREATE TYPE xxx.yyy AS ENUM ();
CREATE SCHEMA zzz;
ALTER TYPE xxx.yyy SET SCHEMA zzz;
> I was able to track this down to changeDependencyFor() within pg_depend.c, but
> still am not able to understand the reason for this error.
>
> When looking into the pg_depend catalog, originally there were 700 entries.
> After a series of cascading drops of the tables, views and functions involved,
> only one was left:
>
> db=# SELECT deptype, objid::regclass FROM pg_depend WHERE refobjid = (SELECT oid FROM pg_type WHERE typnamespace = 'xxx'::regnamespace AND typname = 'yyy');
> deptype | objid
> ---------+------------
> i | 1202633909
> (1 row)
>
> Then I deleted manually from pg_depend this entry, and there were 0 entries
> left, but still the error was persisting. I am not able to change the schema,
> which is quite a blocker in our migration plan.
>
> Any ideas how we could proceed any further? And btw what is the entry above:
> objid = 1202633909 + deptype = i?
That entry is type xxx.yyy[]:
test=# SELECT classid::regclass, objid::regtype, refclassid::regclass, refobjid::regtype FROM pg_depend WHERE refobjid = (SELECT oid FROM pg_type WHERE typnamespace = 'xxx'::regnamespace AND typname = 'yyy');
classid | objid | refclassid | refobjid
---------+-----------+------------+----------
pg_type | xxx.yyy[] | pg_type | xxx.yyy
(1 row)
--
Erik
From | Date | Subject | |
---|---|---|---|
Next Message | Laurenz Albe | 2023-01-17 14:58:21 | Re: ERROR: failed to change schema dependency for type xxx.yyy |
Previous Message | Kouber Saparev | 2023-01-17 10:46:14 | ERROR: failed to change schema dependency for type xxx.yyy |