On Tue, Sep 16, 2014 at 12:14 PM, Emre Hasegeli <e...@hasegeli.com> wrote:

> > > Changing the default opclasses should work if we make
> > > pg_dump --binary-upgrade dump the default opclasses with indexes
> > > and exclusion constraints.  I think it makes sense to do so in
> > > --binary-upgrade mode.  I can try to come with a patch for this.
> >
> > Can you explain it a bit more detail? I didn't get it.
>
> pg_upgrade uses pg_dump --binary-upgrade to dump the schema of
> the old database.  Now, it generates CREATE INDEX statements without
> explicit opclass if opclass is the default.  We can change pg_dump
> to generate the statements with opclass even if opclass is the default
> in --binary-upgrade mode.
>

Thanks, I get it. I checked pg_dump implementation. It appears to be not as
easy as it could be. pg_dump doesn't form index definition by itself. It
calls pg_get_indexdef function. This function have no option to dump names
of default opclasses. Since we can't change behaviour of old postgres
version, we have to make pg_dump form index definition by itself.

------
With best regards,
Alexander Korotkov.

Reply via email to