On 29.08.23 09:05, Jeevan Chalke wrote:
v1-0001-Implement-jsonpath-.bigint-.integer-and-.number-m.patch

This commit implements jsonpath .bigint(), .integer(), and .number()
methods.  The JSON string or a numeric value is converted to the
bigint, int4, and numeric type representation.

A comment that applies to all of these: These add various keywords, switch cases, documentation entries in some order. Are we happy with that? Should we try to reorder all of that for better maintainability or readability?

v1-0002-Implement-.date-.time-.time_tz-.timestamp-and-.ti.patch

This commit implements jsonpath .date(), .time(), .time_tz(),
.timestamp(), .timestamp_tz() methods.  The JSON string representing
a valid date/time is converted to the specific date or time type
representation.

The changes use the infrastructure of the .datetime() method and
perform the datatype conversion as appropriate.  All these methods
accept no argument and use ISO datetime formats.

These should accept an optional precision argument. Did you plan to add that?

v1-0003-Implement-jsonpath-.boolean-and-.string-methods.patch

This commit implements jsonpath .boolean() and .string() methods.

This contains a compiler warning:

../src/backend/utils/adt/jsonpath_exec.c: In function 'executeItemOptUnwrapTarget': ../src/backend/utils/adt/jsonpath_exec.c:1162:86: error: 'tmp' may be used uninitialized [-Werror=maybe-uninitialized]

v1-0004-Implement-jasonpath-.decimal-precision-scale-meth.patch

This commit implements jsonpath .decimal() method with optional
precision and scale.  If precision and scale are provided, then
it is converted to the equivalent numerictypmod and applied to the
numeric number.

This also contains compiler warnings:

../src/backend/utils/adt/jsonpath_exec.c: In function 'executeItemOptUnwrapTarget': ../src/backend/utils/adt/jsonpath_exec.c:1403:53: error: declaration of 'numstr' shadows a previous local [-Werror=shadow=compatible-local] ../src/backend/utils/adt/jsonpath_exec.c:1442:54: error: declaration of 'elem' shadows a previous local [-Werror=shadow=compatible-local]

There is a typo in the commit message: "Implement jasonpath"

Any reason this patch is separate from 0002? Isn't number() and decimal() pretty similar?

You could also update src/backend/catalog/sql_features.txt in each patch (features T865 through T878).



Reply via email to