Re: SQL/JSON features for v15
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Andres Freund <andres@anarazel.de>,
"Jonathan S. Katz" <jkatz@postgresql.org>, Andrew Dunstan <andrew@dunslane.net>, Amit Langote <amitlangote09@gmail.com>, Nikita Glukhov <n.gluhov@postgrespro.ru>,
Alvaro Herrera <alvherre@alvh.no-ip.org>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Michael Paquier <michael@paquier.xyz>, John Naylor <john.naylor@enterprisedb.com>
Date: 2022-08-31T17:09:51Z
Lists: pgsql-hackers
On Wed, Aug 31, 2022 at 1:06 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > The currently proposed patchset hacks up a relatively small number > of core datatypes to be able to do that. But it's just a hack > and there's no prospect of extension types being able to join > in the fun. I think where we need to start, for v16, is making > an API design that will let any datatype have this functionality. This would be really nice to have. > (I don't say that we'd convert every datatype to do so right away; > in the long run we should, but I'm content to start with just the > same core types touched here.) I would be in favor of making more of an effort than just a few token data types. The initial patch could just touch a few, but once the infrastructure is in place we should really make a sweep through the tree and tidy up. > Beside the JSON stuff, there is > another even more pressing application for such behavior, namely > the often-requested COPY functionality to be able to shunt bad data > off somewhere without losing the entire transfer. In the COPY case > I think we'd want to be able to capture the error message that > would have been issued, which means the current patches are not > at all appropriate as a basis for that API design: they're just > returning a bool without any details. Fully agreed. -- Robert Haas EDB: http://www.enterprisedb.com
Commits
-
JSON_TABLE: Add support for NESTED paths and columns
- bb766cde63b4 17.0 landed
-
Add basic JSON_TABLE() functionality
- de3600452b61 17.0 landed
-
Add SQL/JSON query functions
- 6185c9737cf4 17.0 landed
-
Add soft error handling to some expression nodes
- aaaf9449ec6b 17.0 landed
-
Adjust populate_record_field() to handle errors softly
- 1edb3b491bee 17.0 landed
-
Refactor code used by jsonpath executor to fetch variables
- faa2b953ba3b 17.0 landed
-
Add more SQL/JSON constructor functions
- 03734a7fed7d 17.0 landed
-
SQL/JSON: support the IS JSON predicate
- 6ee30209a6f1 16.0 landed
-
SQL/JSON: add standard JSON constructor functions
- 7081ac46ace8 16.0 landed
-
Revert SQL/JSON features
- 96ef3237bf74 15.0 landed
- 2f2b18bd3f55 16.0 landed
-
Numeric error suppression in jsonpath
- 16d489b0fe05 12.0 cited