On Thu, Dec 04, 2025 at 07:37:32PM -0500, Tom Lane wrote: > This of course arises because the source code is passing the address > of a local ErrorSaveContext variable to that macro. We don't have > any other instances of that coding pattern AFAICS, so I wonder if > that was really the most adapted way to do it. Looking at the > code, it seems to be turning around and stuffing a different error > message into a passed-in ErrorSaveContext, which feels a little > weird.
Thanks for the report. Right. There are three instances of that in
pg_dependencies.c, two in pg_ndistinct.c. I would not mind doing the
attached to calm down these warnings, matching with the other areas of
the code, that simply removes the macro and checks the state value
directly.
> Also, I don't think these errdetail messages meet our style
> guidelines:
>
> errdetail("Invalid \"%s\" value.", PG_DEPENDENCIES_KEY_ATTRIBUTES));
>
> They're supposed to be complete sentences.
Yeah, I should have been more careful here. I have spent more time on
all of these, and adjusted all the errdetails for pg_ndistinct.c and
pg_dependencies.c to use full sentences.
I am just grouping everything with the attached. They'd be better
if handled separately, obviously. Comments?
--
Michael
From bb8f5e97e7cc7c435cbf1ec5bc16f1d5a46cc9e1 Mon Sep 17 00:00:00 2001 From: Michael Paquier <[email protected]> Date: Fri, 5 Dec 2025 10:14:39 +0900 Subject: [PATCH] Improve pg_dependencies.c and pg_ndistinct.c --- src/backend/utils/adt/pg_dependencies.c | 42 ++-- src/backend/utils/adt/pg_ndistinct.c | 34 +-- src/test/regress/expected/pg_dependencies.out | 196 +++++++++--------- src/test/regress/expected/pg_ndistinct.out | 160 +++++++------- 4 files changed, 216 insertions(+), 216 deletions(-) diff --git a/src/backend/utils/adt/pg_dependencies.c b/src/backend/utils/adt/pg_dependencies.c index 56abb7441775..1552e03d1c1e 100644 --- a/src/backend/utils/adt/pg_dependencies.c +++ b/src/backend/utils/adt/pg_dependencies.c @@ -85,7 +85,7 @@ dependencies_object_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Expected an object key.")); + errdetail("A key was expected.")); break; case DEPS_EXPECT_ATTNUM_LIST: @@ -127,7 +127,7 @@ dependencies_object_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Unexpected parse state: %d", (int) parse->state)); + errdetail("Unexpected parse state has been found: %d.", (int) parse->state)); break; } @@ -153,7 +153,7 @@ dependencies_object_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Unexpected parse state: %d", (int) parse->state)); + errdetail("Unexpected parse state has been found: %d.", (int) parse->state)); return JSON_SEM_ACTION_FAILED; } @@ -162,7 +162,7 @@ dependencies_object_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Item must contain \"%s\" key", + errdetail("Item must contain \"%s\" key.", PG_DEPENDENCIES_KEY_ATTRIBUTES)); return JSON_SEM_ACTION_FAILED; } @@ -226,7 +226,7 @@ dependencies_object_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Item \"%s\" value %d found in the \"%s\" list.", + errdetail("Item \"%s\" with value %d has been found in the \"%s\" list.", PG_DEPENDENCIES_KEY_DEPENDENCY, parse->dependency, PG_DEPENDENCIES_KEY_ATTRIBUTES)); return JSON_SEM_ACTION_FAILED; @@ -274,7 +274,7 @@ dependencies_array_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Array found in unexpected place.")); + errdetail("Array has been found at an unexpected location.")); return JSON_SEM_ACTION_FAILED; } @@ -329,7 +329,7 @@ dependencies_array_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Array found in unexpected place.")); + errdetail("Array has been found at an unexpected location.")); break; } return JSON_SEM_ACTION_FAILED; @@ -446,7 +446,7 @@ dependencies_array_element_start(void *state, bool isnull) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Unexpected array element.")); + errdetail("Unexpected array element has been found.")); break; } @@ -494,12 +494,12 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) case DEPS_EXPECT_ATTNUM: attnum = pg_strtoint16_safe(token, (Node *) &escontext); - if (SOFT_ERROR_OCCURRED(&escontext)) + if (escontext.error_occurred) { errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value.", PG_DEPENDENCIES_KEY_ATTRIBUTES)); + errdetail("Key \"%s\" has an incorrect value.", PG_DEPENDENCIES_KEY_ATTRIBUTES)); return JSON_SEM_ACTION_FAILED; } @@ -512,7 +512,7 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" element: %d.", + errdetail("Invalid \"%s\" element has been found: %d.", PG_DEPENDENCIES_KEY_ATTRIBUTES, attnum)); return JSON_SEM_ACTION_FAILED; } @@ -526,7 +526,7 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" element: %d cannot follow %d.", + errdetail("Invalid \"%s\" element has been found: %d cannot follow %d.", PG_DEPENDENCIES_KEY_ATTRIBUTES, attnum, prev)); return JSON_SEM_ACTION_FAILED; } @@ -539,12 +539,12 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) parse->dependency = (AttrNumber) pg_strtoint16_safe(token, (Node *) &escontext); - if (SOFT_ERROR_OCCURRED(&escontext)) + if (escontext.error_occurred) { errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value.", PG_DEPENDENCIES_KEY_DEPENDENCY)); + errdetail("Key \"%s\" has an incorrect value.", PG_DEPENDENCIES_KEY_DEPENDENCY)); return JSON_SEM_ACTION_FAILED; } @@ -557,7 +557,7 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value: %d.", + errdetail("Key \"%s\" has an incorrect value: %d.", PG_DEPENDENCIES_KEY_DEPENDENCY, parse->dependency)); return JSON_SEM_ACTION_FAILED; } @@ -569,12 +569,12 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) parse->degree = float8in_internal(token, NULL, "double", token, (Node *) &escontext); - if (SOFT_ERROR_OCCURRED(&escontext)) + if (escontext.error_occurred) { errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value.", PG_DEPENDENCIES_KEY_DEGREE)); + errdetail("Key \"%s\" has an incorrect value.", PG_DEPENDENCIES_KEY_DEGREE)); return JSON_SEM_ACTION_FAILED; } @@ -585,7 +585,7 @@ dependencies_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", parse->str), - errdetail("Unexpected scalar.")); + errdetail("Unexpected scalar has been found.")); break; } @@ -686,7 +686,7 @@ build_mvdependencies(DependenciesParseState *parse, char *str) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", str), - errdetail("Unexpected end state %d.", parse->state)); + errdetail("Unexpected end state has been found: %d.", parse->state)); return NULL; } @@ -721,7 +721,7 @@ build_mvdependencies(DependenciesParseState *parse, char *str) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", str), - errdetail("Duplicate \"%s\" array: [%s] with \"%s\": %d.", + errdetail("Duplicated \"%s\" array has been found: [%s] for key \"%s\" and value %d.", PG_DEPENDENCIES_KEY_ATTRIBUTES, attnum_list, PG_DEPENDENCIES_KEY_DEPENDENCY, attnum_dep)); pfree(mvdeps); @@ -808,7 +808,7 @@ pg_dependencies_in(PG_FUNCTION_ARGS) errsave(parse_state.escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_dependencies: \"%s\"", str), - errdetail("Must be valid JSON.")); + errdetail("Input data must be valid JSON.")); PG_RETURN_NULL(); } diff --git a/src/backend/utils/adt/pg_ndistinct.c b/src/backend/utils/adt/pg_ndistinct.c index 5292521b1695..9bf1546c8030 100644 --- a/src/backend/utils/adt/pg_ndistinct.c +++ b/src/backend/utils/adt/pg_ndistinct.c @@ -81,7 +81,7 @@ ndistinct_object_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Expected an object key.")); + errdetail("A key was expected.")); break; case NDIST_EXPECT_ATTNUM_LIST: @@ -114,7 +114,7 @@ ndistinct_object_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Unexpected parse state: %d", (int) parse->state)); + errdetail("Unexpected parse state has been found: %d.", (int) parse->state)); break; } @@ -140,7 +140,7 @@ ndistinct_object_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Unexpected parse state: %d", (int) parse->state)); + errdetail("Unexpected parse state has been found: %d.", (int) parse->state)); return JSON_SEM_ACTION_FAILED; } @@ -228,7 +228,7 @@ ndistinct_array_start(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Array found in unexpected place.")); + errdetail("Array has been found at an unexpected location.")); return JSON_SEM_ACTION_FAILED; } @@ -289,7 +289,7 @@ ndistinct_array_end(void *state) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Array found in unexpected place.")); + errdetail("Array has been found at an unexpected location.")); break; } @@ -387,7 +387,7 @@ ndistinct_array_element_start(void *state, bool isnull) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Unexpected array element.")); + errdetail("Unexpected array element has been found.")); break; } @@ -435,12 +435,12 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) case NDIST_EXPECT_ATTNUM: attnum = pg_strtoint16_safe(token, (Node *) &escontext); - if (SOFT_ERROR_OCCURRED(&escontext)) + if (escontext.error_occurred) { errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value.", PG_NDISTINCT_KEY_ATTRIBUTES)); + errdetail("Key \"%s\" has an incorrect value.", PG_NDISTINCT_KEY_ATTRIBUTES)); return JSON_SEM_ACTION_FAILED; } @@ -453,7 +453,7 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Invalid \"%s\" element: %d.", + errdetail("Invalid \"%s\" element has been found: %d.", PG_NDISTINCT_KEY_ATTRIBUTES, attnum)); return JSON_SEM_ACTION_FAILED; } @@ -467,7 +467,7 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Invalid \"%s\" element: %d cannot follow %d.", + errdetail("Invalid \"%s\" element has been found: %d cannot follow %d.", PG_NDISTINCT_KEY_ATTRIBUTES, attnum, prev)); return JSON_SEM_ACTION_FAILED; } @@ -485,7 +485,7 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) */ parse->ndistinct = pg_strtoint32_safe(token, (Node *) &escontext); - if (!SOFT_ERROR_OCCURRED(&escontext)) + if (!escontext.error_occurred) { parse->state = NDIST_EXPECT_KEY; return JSON_SUCCESS; @@ -494,7 +494,7 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Invalid \"%s\" value.", + errdetail("Key \"%s\" has an incorrect value.", PG_NDISTINCT_KEY_NDISTINCT)); break; @@ -502,7 +502,7 @@ ndistinct_scalar(void *state, char *token, JsonTokenType tokentype) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", parse->str), - errdetail("Unexpected scalar.")); + errdetail("Unexpected scalar has been found.")); break; } @@ -627,7 +627,7 @@ build_mvndistinct(NDistinctParseState *parse, char *str) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", str), - errdetail("Unexpected end state %d.", parse->state)); + errdetail("Unexpected end state has been found: %d.", parse->state)); return NULL; } @@ -655,7 +655,7 @@ build_mvndistinct(NDistinctParseState *parse, char *str) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", str), - errdetail("Duplicated \"%s\" array found: [%s]", + errdetail("Duplicated \"%s\" array has been found: [%s]", PG_NDISTINCT_KEY_ATTRIBUTES, s)); pfree(s); return NULL; @@ -705,7 +705,7 @@ build_mvndistinct(NDistinctParseState *parse, char *str) errsave(parse->escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", str), - errdetail("\"%s\" array: [%s] must be a subset of array: [%s]", + errdetail("\"%s\" array [%s] must be a subset of array [%s].", PG_NDISTINCT_KEY_ATTRIBUTES, item_list, refitem_list)); pfree(item_list); @@ -784,7 +784,7 @@ pg_ndistinct_in(PG_FUNCTION_ARGS) errsave(parse_state.escontext, errcode(ERRCODE_INVALID_TEXT_REPRESENTATION), errmsg("malformed pg_ndistinct: \"%s\"", str), - errdetail("Must be valid JSON.")); + errdetail("Input data must be valid JSON.")); PG_RETURN_NULL(); } diff --git a/src/test/regress/expected/pg_dependencies.out b/src/test/regress/expected/pg_dependencies.out index 5c6fe6675173..04641f81d13f 100644 --- a/src/test/regress/expected/pg_dependencies.out +++ b/src/test/regress/expected/pg_dependencies.out @@ -4,7 +4,7 @@ SELECT 'null'::pg_dependencies; ERROR: malformed pg_dependencies: "null" LINE 1: SELECT 'null'::pg_dependencies; ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '{"a": 1}'::pg_dependencies; ERROR: malformed pg_dependencies: "{"a": 1}" LINE 1: SELECT '{"a": 1}'::pg_dependencies; @@ -26,9 +26,9 @@ LINE 1: SELECT '[null]'::pg_dependencies; ^ DETAIL: Item list elements cannot be null. SELECT * FROM pg_input_error_info('null', 'pg_dependencies'); - message | detail | hint | sql_error_code ------------------------------------+--------------------+------+---------------- - malformed pg_dependencies: "null" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------+-----------------------------------+------+---------------- + malformed pg_dependencies: "null" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('{"a": 1}', 'pg_dependencies'); @@ -129,44 +129,44 @@ SELECT '[{"attributes" : ["\ud83d",3], "dependency" : 4, "degree": 0.250}]'::pg_ ERROR: malformed pg_dependencies: "[{"attributes" : ["\ud83d",3], "dependency" : 4, "degree": 0.250}]" LINE 1: SELECT '[{"attributes" : ["\ud83d",3], "dependency" : 4, "de... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"attributes" : [2,3], "dependency" : "\ud83d", "degree": 0.250}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "\ud83d", "degree": 0.250}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : "\ud83d", "de... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"attributes" : [2,3], "dependency" : 4, "degree": "\ud83d"}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": "\ud83d"}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : 4, "degree": ... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.250}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.250}]" LINE 1: SELECT '[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.25... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT * FROM pg_input_error_info('[{"attributes" : ["\ud83d",3], "dependency" : 4, "degree": 0.250}]', 'pg_dependencies'); - message | detail | hint | sql_error_code --------------------------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : ["\ud83d",3], "dependency" : 4, "degree": 0.250}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : ["\ud83d",3], "dependency" : 4, "degree": 0.250}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : "\ud83d", "degree": 0.250}]', 'pg_dependencies'); - message | detail | hint | sql_error_code --------------------------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "\ud83d", "degree": 0.250}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "\ud83d", "degree": 0.250}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : 4, "degree": "\ud83d"}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ----------------------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": "\ud83d"}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +---------------------------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": "\ud83d"}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.250}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_dependencies: "[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.250}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_dependencies: "[{"\ud83d" : [2,3], "dependency" : 4, "degree": 0.250}]" | Input data must be valid JSON. | | 22P02 (1 row) -- Valid keys, invalid values @@ -174,7 +174,7 @@ SELECT '[{"attributes" : null, "dependency" : 4, "degree": 1.000}]'::pg_dependen ERROR: malformed pg_dependencies: "[{"attributes" : null, "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : null, "dependency" : 4, "degree": 1... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : [2,null], "dependency" : 4, "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,null], "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,null], "dependency" : 4, "degree... @@ -184,51 +184,51 @@ SELECT '[{"attributes" : [2,3], "dependency" : null, "degree": 1.000}]'::pg_depe ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : null, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : null, "degree... ^ -DETAIL: Invalid "dependency" value. +DETAIL: Key "dependency" has an incorrect value. SELECT '[{"attributes" : [2,"a"], "dependency" : 4, "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,"a"], "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,"a"], "dependency" : 4, "degree"... ^ -DETAIL: Invalid "attributes" value. +DETAIL: Key "attributes" has an incorrect value. SELECT '[{"attributes" : [2,3], "dependency" : "a", "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "a", "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : "a", "degree"... ^ -DETAIL: Invalid "dependency" value. +DETAIL: Key "dependency" has an incorrect value. SELECT '[{"attributes" : [2,3], "dependency" : [], "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [], "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : [], "degree":... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : [2,3], "dependency" : [null], "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [null], "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : [null], "degr... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : [2,3], "dependency" : [1,null], "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [1,null], "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : [1,null], "de... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : 1, "dependency" : 4, "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : 1, "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : 1, "dependency" : 4, "degree": 1.00... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : "a", "dependency" : 4, "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : "a", "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : "a", "dependency" : 4, "degree": 1.... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : [2,3], "dependency" : 4, "degree": NaN}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": NaN}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : 4, "degree": ... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT * FROM pg_input_error_info('[{"attributes" : null, "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : null, "dependency" : 4, "degree": 1.000}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : null, "dependency" : 4, "degree": 1.000}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,null], "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); @@ -238,57 +238,57 @@ SELECT * FROM pg_input_error_info('[{"attributes" : [2,null], "dependency" : 4, (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : null, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ----------------------------------------------------------------------------------------------+-----------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : null, "degree": 1.000}]" | Invalid "dependency" value. | | 22P02 + message | detail | hint | sql_error_code +---------------------------------------------------------------------------------------------+------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : null, "degree": 1.000}]" | Key "dependency" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,"a"], "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------------------------+-----------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,"a"], "dependency" : 4, "degree": 1.000}]" | Invalid "attributes" value. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------------------------+------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,"a"], "dependency" : 4, "degree": 1.000}]" | Key "attributes" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : "a", "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------------------------+-----------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "a", "degree": 1.000}]" | Invalid "dependency" value. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------------------------+------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : "a", "degree": 1.000}]" | Key "dependency" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : [], "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code --------------------------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [], "degree": 1.000}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [], "degree": 1.000}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : [null], "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [null], "degree": 1.000}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [null], "degree": 1.000}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : [1,null], "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code --------------------------------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [1,null], "degree": 1.000}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : [1,null], "degree": 1.000}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : 1, "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : 1, "dependency" : 4, "degree": 1.000}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : 1, "dependency" : 4, "degree": 1.000}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : "a", "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : "a", "dependency" : 4, "degree": 1.000}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : "a", "dependency" : 4, "degree": 1.000}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : 4, "degree": NaN}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": NaN}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": NaN}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT '[{"attributes": [], "dependency": 2, "degree": 1}]' ::pg_dependencies; @@ -317,22 +317,22 @@ SELECT '[{"dependency" : 4, "degree": "1.2"}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"dependency" : 4, "degree": "1.2"}]" LINE 1: SELECT '[{"dependency" : 4, "degree": "1.2"}]'::pg_dependenc... ^ -DETAIL: Item must contain "attributes" key +DETAIL: Item must contain "attributes" key. SELECT '[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, "degree": "1.2"}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, "degree": "1.2"}]" LINE 1: SELECT '[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, ... ^ -DETAIL: Invalid "dependency" value: 0. +DETAIL: Key "dependency" has an incorrect value: 0. SELECT '[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9, "degree": "1.2"}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9, "degree": "1.2"}]" LINE 1: SELECT '[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9,... ^ -DETAIL: Invalid "dependency" value: -9. +DETAIL: Key "dependency" has an incorrect value: -9. SELECT '[{"attributes": [1,2], "dependency": 2, "degree": 1}]' ::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes": [1,2], "dependency": 2, "degree": 1}]" LINE 1: SELECT '[{"attributes": [1,2], "dependency": 2, "degree": 1}... ^ -DETAIL: Item "dependency" value 2 found in the "attributes" list. +DETAIL: Item "dependency" with value 2 has been found in the "attributes" list. SELECT '[{"attributes" : [1, {}], "dependency" : 1, "degree": "1.2"}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [1, {}], "dependency" : 1, "degree": "1.2"}]" LINE 1: SELECT '[{"attributes" : [1, {}], "dependency" : 1, "degree"... @@ -352,29 +352,29 @@ SELECT '[{"attributes" : [1,2], "dependency" : 1, "degree": "a"}]'::pg_dependenc ERROR: malformed pg_dependencies: "[{"attributes" : [1,2], "dependency" : 1, "degree": "a"}]" LINE 1: SELECT '[{"attributes" : [1,2], "dependency" : 1, "degree": ... ^ -DETAIL: Invalid "degree" value. +DETAIL: Key "degree" has an incorrect value. SELECT * FROM pg_input_error_info('[{"dependency" : 4, "degree": "1.2"}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------+------------------------------------+------+---------------- - malformed pg_dependencies: "[{"dependency" : 4, "degree": "1.2"}]" | Item must contain "attributes" key | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------+-------------------------------------+------+---------------- + malformed pg_dependencies: "[{"dependency" : 4, "degree": "1.2"}]" | Item must contain "attributes" key. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, "degree": "1.2"}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------------------------------------+--------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, "degree": "1.2"}]" | Invalid "dependency" value: 0. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------------------------------------+---------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : 0, "degree": "1.2"}]" | Key "dependency" has an incorrect value: 0. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9, "degree": "1.2"}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------------------------------+---------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9, "degree": "1.2"}]" | Invalid "dependency" value: -9. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------------------------------+----------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [1,2,3,4,5,6,7], "dependency" : -9, "degree": "1.2"}]" | Key "dependency" has an incorrect value: -9. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes": [1,2], "dependency": 2, "degree": 1}]' , 'pg_dependencies'); - message | detail | hint | sql_error_code -------------------------------------------------------------------------------------+-----------------------------------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes": [1,2], "dependency": 2, "degree": 1}]" | Item "dependency" value 2 found in the "attributes" list. | | 22P02 + message | detail | hint | sql_error_code +------------------------------------------------------------------------------------+-------------------------------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes": [1,2], "dependency": 2, "degree": 1}]" | Item "dependency" with value 2 has been found in the "attributes" list. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1, {}], "dependency" : 1, "degree": "1.2"}]', 'pg_dependencies'); @@ -396,9 +396,9 @@ SELECT * FROM pg_input_error_info('[{"attributes" : [1,2], "dependency" : 3, "de (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1,2], "dependency" : 1, "degree": "a"}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------------------------+-------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [1,2], "dependency" : 1, "degree": "a"}]" | Invalid "degree" value. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------------------------+--------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [1,2], "dependency" : 1, "degree": "a"}]" | Key "degree" has an incorrect value. | | 22P02 (1 row) -- Funky degree values, which do not fail. @@ -422,7 +422,7 @@ SELECT '[{"attributes" : [2], "dependency" : 4, "degree": "inf"}]'::pg_dependenc SELECT '[{"attributes" : [2], "dependency" : 4, "degree": "-inf"}]'::pg_dependencies::text::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes": [2], "dependency": 4, "degree": -Infinity}]" -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. -- Duplicated keys SELECT '[{"attributes" : [2,3], "attributes": [1,2], "dependency" : 4, "degree": 1.000}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "attributes": [1,2], "dependency" : 4, "degree": 1.000}]" @@ -462,22 +462,22 @@ SELECT '[{"attributes" : [0,2], "dependency" : 4, "degree": 0.500}]'::pg_depende ERROR: malformed pg_dependencies: "[{"attributes" : [0,2], "dependency" : 4, "degree": 0.500}]" LINE 1: SELECT '[{"attributes" : [0,2], "dependency" : 4, "degree": ... ^ -DETAIL: Invalid "attributes" element: 0. +DETAIL: Invalid "attributes" element has been found: 0. SELECT '[{"attributes" : [-7,-9], "dependency" : 4, "degree": 0.500}]'::pg_dependencies; ERROR: malformed pg_dependencies: "[{"attributes" : [-7,-9], "dependency" : 4, "degree": 0.500}]" LINE 1: SELECT '[{"attributes" : [-7,-9], "dependency" : 4, "degree"... ^ -DETAIL: Invalid "attributes" element: -9. +DETAIL: Invalid "attributes" element has been found: -9. SELECT * FROM pg_input_error_info('[{"attributes" : [0,2], "dependency" : 4, "degree": 0.500}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -------------------------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [0,2], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element: 0. | | 22P02 + message | detail | hint | sql_error_code +------------------------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [0,2], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element has been found: 0. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [-7,-9], "dependency" : 4, "degree": 0.500}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------------------------+-----------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [-7,-9], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element: -9. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------------------------+--------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [-7,-9], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element has been found: -9. | | 22P02 (1 row) -- Duplicated attributes @@ -485,11 +485,11 @@ SELECT '[{"attributes" : [2,2], "dependency" : 4, "degree": 0.500}]'::pg_depende ERROR: malformed pg_dependencies: "[{"attributes" : [2,2], "dependency" : 4, "degree": 0.500}]" LINE 1: SELECT '[{"attributes" : [2,2], "dependency" : 4, "degree": ... ^ -DETAIL: Invalid "attributes" element: 2 cannot follow 2. +DETAIL: Invalid "attributes" element has been found: 2 cannot follow 2. SELECT * FROM pg_input_error_info('[{"attributes" : [2,2], "dependency" : 4, "degree": 0.500}]', 'pg_dependencies'); - message | detail | hint | sql_error_code -------------------------------------------------------------------------------------------+--------------------------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,2], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element: 2 cannot follow 2. | | 22P02 + message | detail | hint | sql_error_code +------------------------------------------------------------------------------------------+-----------------------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,2], "dependency" : 4, "degree": 0.500}]" | Invalid "attributes" element has been found: 2 cannot follow 2. | | 22P02 (1 row) -- Duplicated attribute lists. @@ -499,13 +499,13 @@ ERROR: malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "d {"attributes" : [2,3], "dependency" : 4, "degree": 1.000}]" LINE 1: SELECT '[{"attributes" : [2,3], "dependency" : 4, "degree": ... ^ -DETAIL: Duplicate "attributes" array: [2, 3] with "dependency": 4. +DETAIL: Duplicated "attributes" array has been found: [2, 3] for key "dependency" and value 4. SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "dependency" : 4, "degree": 1.000}, {"attributes" : [2,3], "dependency" : 4, "degree": 1.000}]', 'pg_dependencies'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------------------+------------------------------------------------------------+------+---------------- - malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": 1.000},+| Duplicate "attributes" array: [2, 3] with "dependency": 4. | | 22P02 - {"attributes" : [2,3], "dependency" : 4, "degree": 1.000}]" | | | + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------+------+---------------- + malformed pg_dependencies: "[{"attributes" : [2,3], "dependency" : 4, "degree": 1.000},+| Duplicated "attributes" array has been found: [2, 3] for key "dependency" and value 4. | | 22P02 + {"attributes" : [2,3], "dependency" : 4, "degree": 1.000}]" | | | (1 row) -- Valid inputs diff --git a/src/test/regress/expected/pg_ndistinct.out b/src/test/regress/expected/pg_ndistinct.out index 736954b9301c..e03cacd25c24 100644 --- a/src/test/regress/expected/pg_ndistinct.out +++ b/src/test/regress/expected/pg_ndistinct.out @@ -4,7 +4,7 @@ SELECT 'null'::pg_ndistinct; ERROR: malformed pg_ndistinct: "null" LINE 1: SELECT 'null'::pg_ndistinct; ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '{"a": 1}'::pg_ndistinct; ERROR: malformed pg_ndistinct: "{"a": 1}" LINE 1: SELECT '{"a": 1}'::pg_ndistinct; @@ -26,9 +26,9 @@ LINE 1: SELECT '[null]'::pg_ndistinct; ^ DETAIL: Item list elements cannot be null. SELECT * FROM pg_input_error_info('null', 'pg_ndistinct'); - message | detail | hint | sql_error_code ---------------------------------+--------------------+------+---------------- - malformed pg_ndistinct: "null" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------+-----------------------------------+------+---------------- + malformed pg_ndistinct: "null" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('{"a": 1}', 'pg_ndistinct'); @@ -140,44 +140,44 @@ SELECT '[{"\ud83d" : [1, 2], "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"\ud83d" : [1, 2], "ndistinct" : 4}]" LINE 1: SELECT '[{"\ud83d" : [1, 2], "ndistinct" : 4}]'::pg_ndistinc... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"attributes" : [1, 2], "\ud83d" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [1, 2], "\ud83d" : 4}]" LINE 1: SELECT '[{"attributes" : [1, 2], "\ud83d" : 4}]'::pg_ndistin... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]" LINE 1: SELECT '[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]'::... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT '[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]" LINE 1: SELECT '[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]'::... ^ -DETAIL: Must be valid JSON. +DETAIL: Input data must be valid JSON. SELECT * FROM pg_input_error_info('[{"\ud83d" : [1, 2], "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code -------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_ndistinct: "[{"\ud83d" : [1, 2], "ndistinct" : 4}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_ndistinct: "[{"\ud83d" : [1, 2], "ndistinct" : 4}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1, 2], "\ud83d" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code --------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [1, 2], "\ud83d" : 4}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [1, 2], "\ud83d" : 4}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [1, 2], "ndistinct" : "\ud83d"}]" | Input data must be valid JSON. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------------+---------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]" | Must be valid JSON. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------------+--------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : ["\ud83d", 2], "ndistinct" : 1}]" | Input data must be valid JSON. | | 22P02 (1 row) -- Valid keys, invalid values @@ -185,7 +185,7 @@ SELECT '[{"attributes" : null, "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : null, "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : null, "ndistinct" : 4}]'::pg_ndisti... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : [], "ndistinct" : 1}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [], "ndistinct" : 1}]" LINE 1: SELECT '[{"attributes" : [], "ndistinct" : 1}]'::pg_ndistinc... @@ -205,32 +205,32 @@ SELECT '[{"attributes" : [2,3], "ndistinct" : null}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : null}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : null}]'::pg_nd... ^ -DETAIL: Invalid "ndistinct" value. +DETAIL: Key "ndistinct" has an incorrect value. SELECT '[{"attributes" : [2,"a"], "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,"a"], "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : [2,"a"], "ndistinct" : 4}]'::pg_ndi... ^ -DETAIL: Invalid "attributes" value. +DETAIL: Key "attributes" has an incorrect value. SELECT '[{"attributes" : [2,3], "ndistinct" : "a"}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : "a"}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : "a"}]'::pg_ndi... ^ -DETAIL: Invalid "ndistinct" value. +DETAIL: Key "ndistinct" has an incorrect value. SELECT '[{"attributes" : [2,3], "ndistinct" : []}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : []}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : []}]'::pg_ndis... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : [2,3], "ndistinct" : [null]}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [null]}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : [null]}]'::pg_... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : [2,3], "ndistinct" : [1,null]}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [1,null]}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : [1,null]}]'::p... ^ -DETAIL: Array found in unexpected place. +DETAIL: Array has been found at an unexpected location. SELECT '[{"attributes" : [2,3], "ndistinct" : {"a": 1}}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : {"a": 1}}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : {"a": 1}}]'::p... @@ -240,22 +240,22 @@ SELECT '[{"attributes" : [0,1], "ndistinct" : 1}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [0,1], "ndistinct" : 1}]" LINE 1: SELECT '[{"attributes" : [0,1], "ndistinct" : 1}]'::pg_ndist... ^ -DETAIL: Invalid "attributes" element: 0. +DETAIL: Invalid "attributes" element has been found: 0. SELECT '[{"attributes" : [-7,-9], "ndistinct" : 1}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [-7,-9], "ndistinct" : 1}]" LINE 1: SELECT '[{"attributes" : [-7,-9], "ndistinct" : 1}]'::pg_ndi... ^ -DETAIL: Invalid "attributes" element: -9. +DETAIL: Invalid "attributes" element has been found: -9. SELECT '[{"attributes" : 1, "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : 1, "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : 1, "ndistinct" : 4}]'::pg_ndistinct... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : "a", "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : "a", "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : "a", "ndistinct" : 4}]'::pg_ndistin... ^ -DETAIL: Unexpected scalar. +DETAIL: Unexpected scalar has been found. SELECT '[{"attributes" : {"a": 1}, "ndistinct" : 1}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : {"a": 1}, "ndistinct" : 1}]" LINE 1: SELECT '[{"attributes" : {"a": 1}, "ndistinct" : 1}]'::pg_nd... @@ -267,9 +267,9 @@ LINE 1: SELECT '[{"attributes" : [1, {"a": 1}], "ndistinct" : 1}]'::... ^ DETAIL: Attribute lists can only contain attribute numbers. SELECT * FROM pg_input_error_info('[{"attributes" : null, "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : null, "ndistinct" : 4}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : null, "ndistinct" : 4}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [], "ndistinct" : 1}]', 'pg_ndistinct'); @@ -291,39 +291,39 @@ SELECT * FROM pg_input_error_info('[{"attributes" : [2,null], "ndistinct" : 4}]' (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : null}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code -------------------------------------------------------------------------+----------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : null}]" | Invalid "ndistinct" value. | | 22P02 + message | detail | hint | sql_error_code +------------------------------------------------------------------------+-----------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : null}]" | Key "ndistinct" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,"a"], "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------+-----------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,"a"], "ndistinct" : 4}]" | Invalid "attributes" value. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------+------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,"a"], "ndistinct" : 4}]" | Key "attributes" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : "a"}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------+----------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : "a"}]" | Invalid "ndistinct" value. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------+-----------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : "a"}]" | Key "ndistinct" has an incorrect value. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : []}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : []}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : []}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : [null]}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [null]}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +--------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [null]}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : [1,null]}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code -----------------------------------------------------------------------------+----------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [1,null]}]" | Array found in unexpected place. | | 22P02 + message | detail | hint | sql_error_code +----------------------------------------------------------------------------+-------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : [1,null]}]" | Array has been found at an unexpected location. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : {"a": 1}}]', 'pg_ndistinct'); @@ -333,27 +333,27 @@ SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : {"a": 1 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : 1, "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : 1, "ndistinct" : 4}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : 1, "ndistinct" : 4}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : [-7,-9], "ndistinct" : 1}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------------+-----------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [-7,-9], "ndistinct" : 1}]" | Invalid "attributes" element: -9. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------------+--------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [-7,-9], "ndistinct" : 1}]" | Invalid "attributes" element has been found: -9. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : 1, "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : 1, "ndistinct" : 4}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +-----------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : 1, "ndistinct" : 4}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : "a", "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code --------------------------------------------------------------------+--------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : "a", "ndistinct" : 4}]" | Unexpected scalar. | | 22P02 + message | detail | hint | sql_error_code +-------------------------------------------------------------------+-----------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : "a", "ndistinct" : 4}]" | Unexpected scalar has been found. | | 22P02 (1 row) SELECT * FROM pg_input_error_info('[{"attributes" : {"a": 1}, "ndistinct" : 1}]', 'pg_ndistinct'); @@ -373,11 +373,11 @@ SELECT '[{"attributes" : [2,2], "ndistinct" : 4}]'::pg_ndistinct; ERROR: malformed pg_ndistinct: "[{"attributes" : [2,2], "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : [2,2], "ndistinct" : 4}]'::pg_ndist... ^ -DETAIL: Invalid "attributes" element: 2 cannot follow 2. +DETAIL: Invalid "attributes" element has been found: 2 cannot follow 2. SELECT * FROM pg_input_error_info('[{"attributes" : [2,2], "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ----------------------------------------------------------------------+--------------------------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,2], "ndistinct" : 4}]" | Invalid "attributes" element: 2 cannot follow 2. | | 22P02 + message | detail | hint | sql_error_code +---------------------------------------------------------------------+-----------------------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,2], "ndistinct" : 4}]" | Invalid "attributes" element has been found: 2 cannot follow 2. | | 22P02 (1 row) -- Duplicated attribute lists. @@ -387,13 +387,13 @@ ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4}, {"attributes" : [2,3], "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : 4}, ^ -DETAIL: Duplicated "attributes" array found: [2, 3] +DETAIL: Duplicated "attributes" array has been found: [2, 3] SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : 4}, {"attributes" : [2,3], "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------+---------------------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4},+| Duplicated "attributes" array found: [2, 3] | | 22P02 - {"attributes" : [2,3], "ndistinct" : 4}]" | | | + message | detail | hint | sql_error_code +--------------------------------------------------------------------+------------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4},+| Duplicated "attributes" array has been found: [2, 3] | | 22P02 + {"attributes" : [2,3], "ndistinct" : 4}]" | | | (1 row) -- Partially-covered attribute lists. @@ -407,17 +407,17 @@ ERROR: malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4}, {"attributes" : [1,3,-1,-2], "ndistinct" : 4}]" LINE 1: SELECT '[{"attributes" : [2,3], "ndistinct" : 4}, ^ -DETAIL: "attributes" array: [2, 3] must be a subset of array: [1, 3, -1, -2] +DETAIL: "attributes" array [2, 3] must be a subset of array [1, 3, -1, -2]. SELECT * FROM pg_input_error_info('[{"attributes" : [2,3], "ndistinct" : 4}, {"attributes" : [2,-1], "ndistinct" : 4}, {"attributes" : [2,3,-1], "ndistinct" : 4}, {"attributes" : [1,3,-1,-2], "ndistinct" : 4}]', 'pg_ndistinct'); - message | detail | hint | sql_error_code ---------------------------------------------------------------------+----------------------------------------------------------------------+------+---------------- - malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4},+| "attributes" array: [2, 3] must be a subset of array: [1, 3, -1, -2] | | 22P02 - {"attributes" : [2,-1], "ndistinct" : 4}, +| | | - {"attributes" : [2,3,-1], "ndistinct" : 4}, +| | | - {"attributes" : [1,3,-1,-2], "ndistinct" : 4}]" | | | + message | detail | hint | sql_error_code +--------------------------------------------------------------------+---------------------------------------------------------------------+------+---------------- + malformed pg_ndistinct: "[{"attributes" : [2,3], "ndistinct" : 4},+| "attributes" array [2, 3] must be a subset of array [1, 3, -1, -2]. | | 22P02 + {"attributes" : [2,-1], "ndistinct" : 4}, +| | | + {"attributes" : [2,3,-1], "ndistinct" : 4}, +| | | + {"attributes" : [1,3,-1,-2], "ndistinct" : 4}]" | | | (1 row) -- Valid inputs -- 2.51.0
signature.asc
Description: PGP signature
