On Tue, 2010-07-20 at 11:31 +0200, Pavel Stehule wrote:
> Hello
>
> I am working on to_array, to_string functions and I am looking on
> string_to_array function. I am surprised so this function is marked as
> immutable
>
> postgres=# select array_to_string(array[current_date],',');
> array_to_string
> -----------------
> 2010-07-20
> (1 row)
>
> postgres=# set datestyle to German ;
> SET
> postgres=# select array_to_string(array[current_date],',');
> array_to_string
> -----------------
> 20.07.2010
> (1 row)
>
What's wrong with that? "current_date" is the part that's changing, and
it's being passed as an argument to the function. If the argument
changes, an immutable function can return a different result.
Regards,Jeff Davis