Re: Why are JSON extraction functions STABLE and not IMMUTABLE?

From: "anarazel(at)anarazel(dot)de" <andres(at)anarazel(dot)de>
To: Andrew Dunstan <andrew(at)dunslane(dot)net>, Andres Freund <andres(at)2ndquadrant(dot)com>
Cc: depesz(at)depesz(dot)com,pgsql-hackers(at)postgresql(dot)org
Subject: Re: Why are JSON extraction functions STABLE and not IMMUTABLE?
Date: 2013-04-15 21:06:42
Message-ID: 01938342-711d-46eb-9f3f-4f199c962d71@email.android.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andrew Dunstan <andrew(at)dunslane(dot)net> schrieb:

>
>On 04/15/2013 11:46 AM, Andres Freund wrote:
>>>
>>> Me either. It's an oversight, really. Unless there is any objection
>I'll
>>> change them toot sweet. What about the existing (as of 9.2)
>functions?
>> ISTM json_in, out, recv, send should also be immutable.
>array_to_json,
>> row_to_json et all can't be tho.
>
>
>OK, although these have been like this since 9.2. I'm not sure why
>json_out is immutable but json_in isn't.
>
>Does changing these require a catalog version bump?

Well, you could get away without one since a more permissive value should only influence performance and not correctness. But there doesn't yet seem much reason to avoid it that much yet. It could cause confusion for someone at some point.

Andres

---
Please excuse brevity and formatting - I am writing this on my mobile phone.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Nigel Heron 2013-04-15 21:42:17 currval and DISCARD ALL
Previous Message Simon Riggs 2013-04-15 20:53:51 Re: COPY and Volatile default expressions