Error: timestamp with timezone + interval is not immutable while creating index

From: Phil Couling <couling(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Error: timestamp with timezone + interval is not immutable while creating index
Date: 2011-10-13 22:38:42
Message-ID: CANWftz+bkiewmkLBFHjxOfHn8V8duhP+KXYJqbRGBYbVycPgrQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi All

I've got a table with (amongst others) two fields:
last_updated timestamp with time zone;
update_cycle interval;

I'd like to create an index on these, to index time "next update" time
(last_updated + update_cycle).

When I try this I get an error though:

main=> create index foo_next_update on foo( (last_updated + update_cycle) ) ;
ERROR: functions in index expression must be marked IMMUTABLE

Does anyone know why adding two fields like this results in anything
other than an immutable function? Under what circumstances could it
return a different result?

Thanks very much for any help.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Scott Marlowe 2011-10-13 22:59:01 Re: Tablespace files deleted during continuous run
Previous Message Rich Shepard 2011-10-13 22:03:41 Re: I need to load mysql dump to postgres...