Re: 8.2.4 Won't Build 8.1 Functional Indexes

Поиск
Список
Период
Сортировка
От Joshua D. Drake
Тема Re: 8.2.4 Won't Build 8.1 Functional Indexes
Дата
Msg-id 46678B1B.4050303@commandprompt.com
обсуждение исходный текст
Ответ на Re: 8.2.4 Won't Build 8.1 Functional Indexes  ("Chris Hoover" <revoohc@gmail.com>)
Список pgsql-admin
Chris Hoover wrote:
> Well, the one index:
> CREATE INDEX acceptedbilling_to_date

> The second index is rather stupid, it was an early index before I
> figured out how to split a timestamp.
>
> Anyway, is there a way to make the first index work?  Otherwise we end
> up with a seq scan on our billing table which is very painful.

First, please do not top post:

http://www.catb.org/jargon/html/T/top-post.html

Second:

create function mydate(varchar) returns varchar AS $$ select
to_char($1::date,'YYYYMMDD'); $$ LANGUAGE SQL IMMUTABLE;

create index foobar on date_test(mydate(date));

You will need to test this, but it does allow you to create the index.

Sincerely,

Joshua D. Drake


>
> Thanks,
>
> Chris
>
>
> On 6/6/07, *Tom Lane* <tgl@sss.pgh.pa.us <mailto:tgl@sss.pgh.pa.us>> wrote:
>
>     Alvaro Herrera <alvherre@commandprompt.com
>     <mailto:alvherre@commandprompt.com>> writes:
>      > You can't do this because to_date and other functions are not
>     immutable.
>      > 8.2 seems to be more picky about this -- the date conversions of
>      > timestamptz columns are dependent on the current timezone.
>
>     The reason 8.2 is more picky is that the function is less immutable
>     thanks to the addition of locale-dependent functionality:
>     http://archives.postgresql.org/pgsql-committers/2006-11/msg00264.php
>
>     I gather that the underlying column is timestamp without tz, or it would
>     never have worked in 8.1 either.  That being the case, these index
>     definitions seem pretty darn stupid anyway --- why aren't you just
>     indexing on date_trunc or a plain cast to date?
>
>                             regards, tom lane
>
>


--

       === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
Providing the most comprehensive  PostgreSQL solutions since 1997
              http://www.commandprompt.com/

Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/


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

Предыдущее
От: "Ali, Luqman"
Дата:
Сообщение: Re: Encountering errors while using pg_ctl
Следующее
От: "Jerry Huff"
Дата:
Сообщение: WAL restore