Reece Hart <reece(at)in-machina(dot)com> writes:
> I have a hunch about why this happens and is rare. The pftype_id_lookup
> function was created AFTER some of the tables using 'alter table set
> default ...'. Thus, the function's OID is greater than the OID of the
> tables which use them.
Yeah, this is a well-known problem in pg_dump. We need to revise it to
pay attention to the dependency information that's now available in
pg_depend. At the moment your only alternative is to manually fix the
reload order using pg_restore's features for controlling the reload
order ... which features would never have existed in the first place
if we'd had this problem nailed :-(
regards, tom lane