Re: Planner not choosing GIN index

From: Flo Rance <trourance(at)gmail(dot)com>
To: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
Cc: pgsql-performance(at)lists(dot)postgresql(dot)org
Subject: Re: Planner not choosing GIN index
Date: 2019-03-13 09:10:48
Message-ID: CAHogYcVa++K4kUTbWA0-xiaeNCWwTX9fRnT6uYoqp9N314JB=g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

It is an expected behavior. You can see the list of array operators with
which a GIN index can be used in the doc:

https://www.postgresql.org/docs/current/indexes-types.html

And a very good and detailed explanation about any operator here:

https://stackoverflow.com/questions/4058731/can-postgresql-index-array-columns/29245753#29245753

Regards,
Flo

On Wed, Mar 13, 2019 at 2:44 AM Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
wrote:

> A client had an issue with a where that had a where clause something like
> this:
>
> WHERE 123456 = ANY(integer_array_column)
>
>
> I was surprised that this didn't use the pre-existing GIN index on
> integer_array_column, whereas recoding as
>
> WHERE ARRAY[123456] <@ integer_array_column
>
>
> did cause the GIN index to be used. Is this a known/expected behavior? If
> so, is there any logical reason why we couldn't have the planner pick up on
> that?
>

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Adrien NAYRAT 2019-03-13 12:24:02 Re: ERROR: found xmin from before relfrozenxid
Previous Message Corey Huinker 2019-03-13 01:44:13 Planner not choosing GIN index