Re: Collation-aware comparisons in GIN opclasses - Mailing list pgsql-hackers

From Alexander Korotkov
Subject Re: Collation-aware comparisons in GIN opclasses
Date
Msg-id CAPpHfdvb9T+J0UgXxJ_tYA-RwaTDngqmpmZj4DwQsbw=QQYHoQ@mail.gmail.com
Whole thread Raw
In response to Re: Collation-aware comparisons in GIN opclasses  (Emre Hasegeli <emre@hasegeli.com>)
Responses Re: Collation-aware comparisons in GIN opclasses  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
On Tue, Sep 16, 2014 at 12:14 PM, Emre Hasegeli <emre@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.    

pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: jsonb format is pessimal for toast compression
Next
From: Kevin Grittner
Date:
Subject: Re: LIMIT for UPDATE and DELETE