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