Re: jsonb_set() strictness considered harmful to data - Mailing list pgsql-general

From Pavel Stehule
Subject Re: jsonb_set() strictness considered harmful to data
Date
Msg-id CAFj8pRDPGAedFbmM+NOaJqgWNPBb0BikOmDztqLKxU8Y1amjMQ@mail.gmail.com
Whole thread Raw
In response to Re: jsonb_set() strictness considered harmful to data  (Andrew Dunstan <andrew.dunstan@2ndquadrant.com>)
Responses Re: jsonb_set() strictness considered harmful to data
Re: jsonb_set() strictness considered harmful to data
List pgsql-general
Hi

po 6. 1. 2020 v 22:34 odesílatel Andrew Dunstan <andrew.dunstan@2ndquadrant.com> napsal:
On Thu, Nov 28, 2019 at 2:15 PM Andrew Dunstan
<andrew.dunstan@2ndquadrant.com> wrote:
>
>
> On 11/27/19 9:35 PM, Michael Paquier wrote:
> > On Fri, Nov 15, 2019 at 09:45:59PM +0100, Pavel Stehule wrote:
> >> Maybe ERRCODE_NULL_VALUE_NOT_ALLOWED, and "NULL is not allowed",
> >> errdetail - a exception due setting "null_value_treatment" =>
> >> raise_exception
> >> and maybe some errhint - "Maybe you would to use Jsonb NULL - "null"::jsonb"
> >>
> >> I don't know, but in this case, the exception should be verbose. This is
> >> "rich" function with lot of functionality
> > @Andrew: This patch is waiting on input from you for a couple of days
> > now.
> >
>
>


Updated version including docco and better error message.

cheers

andrew

I think so my objections are solved. I have small objection

+ errdetail("exception raised due to \"null_value_treatment := 'raise_exception'\""),
+ errhint("to avoid, either change the null_value_treatment argument or ensure that an SQL NULL is not used")));

"null_value_treatment := 'raise_exception'\""

it use proprietary PostgreSQL syntax for named parameters. Better to use ANSI/SQL syntax

"null_value_treatment => 'raise_exception'\""

It is fixed in attached patch

source compilation without warnings,
compilation docs without warnings
check-world passed without any problems

I'll mark this patch as ready for commiter

Thank you for your work

Pavel



--
Andrew Dunstan                https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Attachment

pgsql-general by date:

Previous
From: Israel Brewster
Date:
Subject: Re: UPDATE many records
Next
From: Israel Brewster
Date:
Subject: Re: UPDATE many records