Re: pg_dump failed sanity check and user defined types
От | Tom Lane |
---|---|
Тема | Re: pg_dump failed sanity check and user defined types |
Дата | |
Msg-id | 18579.968704621@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: pg_dump failed sanity check and user defined types (Brook Milligan <brook@biology.nmsu.edu>) |
Список | pgsql-hackers |
Brook Milligan <brook@biology.nmsu.edu> writes: >> failed sanity check, type with oid 3516132 was not found > Sounds like you dropped a user type without remembering to drop all > the functions/operators defined for it. Unfortunately there's no > safety cross-check in DROP TYPE (probably there should be). > That's what I would have guessed, but I'm pretty sure that is not the > case (but I'm new to UDTs, so bear with me; maybe I'm not constructing > my script right). See the script below that does the installation of > the types and functions. The problem occurs after running this script > followed by the pg_dump above. I can't duplicate that, either in current sources or 7.0.2. Are you sure you're blaming the right bit of script? > Is there some order dependency for dropping types and functions? > Should I not be dropping these before creating them (I do this to > allow rerunning the script)? Does it have anything to do with the > fact that a single object.so provides all the entry points? What you showed looks fine. > You should be able to find the offending entries by searching through > the system catalogs with queries like > select * from pg_operator where oprleft = 3516132 > There are no rows found. You may need to dig into pg_dump and see exactly what it's complaining about ... it's getting that OID from someplace ... regards, tom lane
В списке pgsql-hackers по дате отправления: