Re: Plan differences

Поиск
Список
Период
Сортировка
От Anton Melser
Тема Re: Plan differences
Дата
Msg-id CAKywjPrWq7-Mj_NEk8U5Yrrt9O3F_qj_iSgbw1PYRZ=gZFXLwg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Plan differences  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Plan differences
Список pgsql-performance
I'd bet your old database is in C locale and the new one is not.

Remind me never to never bet against you :-).
 
The LIKE optimization requires an index that's sorted according to plain
C (strcmp) rules.  A regular text index will be that way only if the
database's LC_COLLATE is C.

If you don't want to rebuild the whole database, you can create indexes to
support this by declaring them with COLLATE "C", or the older way is to
declare them with text_pattern_ops as the index opclass.

Declaring new indexes with COLLATE "C" and removing the old indexes fixed the like problem but it created a another - the > and < queries need a sort before passing off the the new index. Having two indexes seems to give me the best of both worlds, though obviously it's taking up (much) more space. As space isn't ever likely to be a problem, and there are no updates (only copy) to these tables, I'll keep it like this to avoid having to reload the entire DB.

Thanks very much for your help.
Cheers,
Anton

В списке pgsql-performance по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Plan differences
Следующее
От: Anton Melser
Дата:
Сообщение: Re: Plan differences