On Wed, 2013-11-20 at 14:57 -0500, Steven Dodd wrote:
> I've read that setting LC_COLLATE to something other than "C" /
> "POSIX" negatively affects performance, and disables use of indexes
> for LIKE, etc...

It doesn't disable the use of indexes, you just need to create different
indexes.

> Does the same apply to LC_CTYPE?

Yes.

> I am considering setting LC_COLLATE = "C", and LC_CTYPE =
> "en_US.UTF-8", and using LOWER() to case-fold strings for sorting, and
> equality. The motivation for setting LC_CTYPE = "en_US.UTF-8", instead
> of "C", is to gain at least some degree of case-folding for
> international characters.

> Does this sound like a reasonable plan?

No, if you need internalized behavior, then set both LC_COLLATE and
LC_CTYPE to en_US.UTF-8 (or some other suitable locale) and check the
relevant documentation sections about how to create the right indexes.





-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to