Re: More new SQL/JSON item methods
Kyotaro Horiguchi <horikyota.ntt@gmail.com>
From: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
To: jeevan.chalke@enterprisedb.com
Cc: andrew@dunslane.net, tgl@sss.pgh.pa.us, peter@eisentraut.org,
pgsql-hackers@lists.postgresql.org
Date: 2024-01-29T03:12:00Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Rationalize and improve error messages for some jsonpath items
- 92d2ab7554f9 17.0 landed
-
Clean up a bug in sql/json items commit 66ea94e8e6
- 06a66d87dbc7 17.0 landed
-
Implement various jsonpath methods
- 66ea94e8e606 17.0 cited
-
Reorganise jsonpath operators and methods
- 283a95da9236 17.0 landed
-
Add numeric_int8_opt_error() to optionally suppress errors
- c1b9e1e56d8c 17.0 landed
Attachments
- jsonpath_exec_fix_a_type_name.patch (text/x-patch) patch
- jsonpath_exec_merge_msgs_in_same_pattern.patch (text/x-patch) patch
I have two possible issues in a recent commit.
Commit 66ea94e8e6 has introduced the following messages:
(Aplogizies in advance if the commit is not related to this thread.)
jsonpath_exec.c:1287
> if (numeric_is_nan(num) || numeric_is_inf(num))
> RETURN_ERROR(ereport(ERROR,
> (errcode(ERRCODE_NON_NUMERIC_SQL_JSON_ITEM),
> errmsg("numeric argument of jsonpath item method .%s() is out of range for type decimal or number",
> jspOperationName(jsp->type)))));
:1387
> noerr = DirectInputFunctionCallSafe(numeric_in, numstr,
...
> if (!noerr || escontext.error_occurred)
> RETURN_ERROR(ereport(ERROR,
> (errcode(ERRCODE_NON_NUMERIC_SQL_JSON_ITEM),
> errmsg("string argument of jsonpath item method .%s() is not a valid representation of a decimal or number",
They seem to be suggesting that PostgreSQL has the types "decimal" and
"number". I know of the former, but I don't think PostgreSQL has the
latter type. Perhaps the "number" was intended to refer to "numeric"?
(And I think it is largely helpful if the given string were shown in
the error message, but it would be another issue.)
The same commit has introduced the following set of messages:
> %s format is not recognized: "%s"
> date format is not recognized: "%s"
> time format is not recognized: "%s"
> time_tz format is not recognized: "%s"
> timestamp format is not recognized: "%s"
> timestamp_tz format is not recognized: "%s"
I believe that the first line was intended to cover all the others:p
They are attached to this message separately.
regards.
--
Kyotaro Horiguchi
NTT Open Source Software Center