Seamus Abshere <seamus@abshere.net> writes:
> Why is pg_restore trying to put stuff into the pg_catalog schema of all
> places?
Hm ... does myschema actually exist in the target database? If it
doesn't, and the dump file doesn't include a command to create it,
this is what you'll get. That's because what pg_dump emits is
SET search_path = myschema, pg_catalog;
CREATE TABLE ...
and at the moment, if myschema doesn't exist, the creation target
devolves to pg_catalog. This is not terribly elegant but I'm not
sure if there's consensus to change it.
regards, tom lane