Re: Strange (?) Index behavior? - Mailing list pgsql-performance

From Tom Lane
Subject Re: Strange (?) Index behavior?
Date
Msg-id 10898.1099684660@sss.pgh.pa.us
Whole thread Raw
In response to Re: Strange (?) Index behavior?  (Allen Landsidel <alandsidel@gmail.com>)
Responses Re: Strange (?) Index behavior?  (Allen Landsidel <alandsidel@gmail.com>)
List pgsql-performance
Allen Landsidel <alandsidel@gmail.com> writes:
> With that many rows, and a normal index on the field, postgres figures
> the best option for say "I%" is not an index scan, but a sequential
> scan on the table, with a filter -- quite obviously this is slow as
> heck, and yes, I've run analyze several times and in fact have the
> vacuum analyze automated.
> With the partial index the index scan is used and the cost drops from
> 0..2million to 0..9000 -- a vast improvement.

Hmm.  This suggests to me that you're using a non-C locale and so a
plain index *can't* be used for a LIKE query.  Can you force it to use
an indexscan by setting enable_seqscan = false?  If not then you've got
a locale problem.  As someone else pointed out, this can be worked
around by creating an index with the right operator class.

            regards, tom lane

pgsql-performance by date:

Previous
From: "Matthew T. O'Connor"
Date:
Subject: Re: What is the difference between these?
Next
From: Tom Lane
Date:
Subject: Re: What is the difference between these?