From dcfc49c1b652dfe41273579aeaf6b454c51f037b Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Fri, 18 Aug 2023 07:41:14 +0200 Subject: [PATCH] Remove dubious warning message from SQL/JSON functions There was a warning that FORMAT JSON has no effect on json/jsonb types, which is true, but it's not clear why we should issue a warning about it. The SQL standard does not say anything about this, which should generally govern the behavior here. So remove it. Discussion: https://www.postgresql.org/message-id/flat/dfec2cae-d17e-c508-6d16-c2dba82db486%40eisentraut.org --- src/backend/parser/parse_expr.c | 5 ----- src/test/regress/expected/sqljson.out | 6 ------ 2 files changed, 11 deletions(-) diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index c08c06373a..de5732622f 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -3240,12 +3240,7 @@ transformJsonValueExpr(ParseState *pstate, const char *constructName, parser_errposition(pstate, ve->format->location)); if (exprtype == JSONOID || exprtype == JSONBOID) - { format = JS_FORMAT_DEFAULT; /* do not format json[b] types */ - ereport(WARNING, - errmsg("FORMAT JSON has no effect for json and jsonb types"), - parser_errposition(pstate, ve->format->location)); - } else format = ve->format->format_type; } diff --git a/src/test/regress/expected/sqljson.out b/src/test/regress/expected/sqljson.out index 11ebf4403b..fa2abdb4a7 100644 --- a/src/test/regress/expected/sqljson.out +++ b/src/test/regress/expected/sqljson.out @@ -84,9 +84,6 @@ ERROR: JSON ENCODING clause is only allowed for bytea input type LINE 1: SELECT JSON_OBJECT('foo': NULL::int FORMAT JSON ENCODING UTF... ^ SELECT JSON_OBJECT('foo': NULL::json FORMAT JSON); -WARNING: FORMAT JSON has no effect for json and jsonb types -LINE 1: SELECT JSON_OBJECT('foo': NULL::json FORMAT JSON); - ^ json_object ---------------- {"foo" : null} @@ -97,9 +94,6 @@ ERROR: JSON ENCODING clause is only allowed for bytea input type LINE 1: SELECT JSON_OBJECT('foo': NULL::json FORMAT JSON ENCODING UT... ^ SELECT JSON_OBJECT('foo': NULL::jsonb FORMAT JSON); -WARNING: FORMAT JSON has no effect for json and jsonb types -LINE 1: SELECT JSON_OBJECT('foo': NULL::jsonb FORMAT JSON); - ^ json_object --------------- {"foo": null}