Re: [8.1.4] Create index on timestamp fails

From: "Arturo Perez" <aperez(at)hayesinc(dot)com>
To: "Chris Hoover" <revoohc(at)gmail(dot)com>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: [8.1.4] Create index on timestamp fails
Date: 2006-08-22 19:45:52
Message-ID: 4AA304A4DBB6414199F18D7E324EBDE9016C04CF@HAYES3.HAYESINC.ORG
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Chris,

user_tracking is not a function, it's the name of the table containing the column entry_date. Is my syntax that far off?!

-arturo

-----Original Message-----
From: Chris Hoover [mailto:revoohc(at)gmail(dot)com]
Sent: Tuesday, August 22, 2006 3:02 PM
To: Arturo Perez
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] [8.1.4] Create index on timestamp fails

It appears that 8.1 is stricter on checking the type of function. Look at your user_tracking function. It is probably set as volatile. You need to change it to be immutable.

This should fix the issue.

Chris

On 8/21/06, Arturo Perez < aperez(at)hayesinc(dot)com> wrote:

Hi all,

Using postgresql 8.1.4....

I have a table with an column:
entry_date | timestamp with time zone| not null

And when I try to create an index on it like so:
create index entry_date_idx on user_tracking(date_part('year',entry_date));

I get a
ERROR: functions in index expression must be marked IMMUTABLE

According to the mailing lists, this has been working since 7.4. What am I doing wrong?

tia,
arturo

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2006-08-22 19:46:24 Re: Queries joining views
Previous Message Chris Hoover 2006-08-22 19:02:25 Re: [8.1.4] Create index on timestamp fails