Tom Lane wrote:
> Alvaro Herrera <alvherre@commandprompt.com> writes:
> > Tom Lane wrote:
> >> The most effective solution might be to revert the change in pg_migrator
> >> and instead have pg_dump interpret --binary-upgrade --schema-only to
> >> include the data for sequences. It seems ugly as sin though :-(
>
> > It seems cleaner to have a pg_dump --dump-all-sequences or some such.
>
> Well, that's assuming that we think there's any point in having a
> "clean" definition.
>
> I have been poking at the pg_largeobject problem previously mentioned,
> and have found out that there are actually two bugs:
> * pg_largeobject_loid_pn_index is not transferred
> * large object comments are not transferred
Nice catch, thanks.
> The first of these is clearly pg_migrator's responsibility to fix,
> but I think we have to get pg_dump to handle the second one. Again,
> the problem here is that the dividing line between "schema" and "data"
> isn't drawn in a place that suits pg_migrator's needs --- pg_dump
> thinks that both LOs and their comments are "data".
>
> Do you really want to propose that we invent, and document, two new
> switches to expose these behaviors? I think just hacking the behavior
> on the basis of --binary-upgrade is the thing to do. In fact, I'm
> thinking that we should remove the --schema-only switch from
> pg_migrator's call of pg_dump, and just have --binary-upgrade
> automatically know which things it is supposed to dump or not.
Agreed.
> [ pokes at it some more... ] Oooh, there's another issue:
> the backend rejects COMMENT ON LARGE OBJECT if the specified OID
> doesn't exist in pg_largeobject. This is gonna be a problem.
> pg_migrator wants to import the pg_dump output before it's moved
> any tables.
>
> I wonder if it's sane to do the physical move of pg_largeobject
> before we import the dump?
Not sure.
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +