In 9.3 we changed the way json generating functions worked by taking account of cast functions to json from non-builtin types, such as hstore.

In 9.5 I am proposing to provide similar functionality for jsonb. The patch actually takes account of cast functions to both jsonb and json (with jsonb preferred). If there is a cast to jsonb, we use it and then merge the result into the jsonb being accumulated. If there is just a cast to json, we use it, and then parse that directly into the result datum.

It was arguably a bit of an oversight not to take account of casts to jsonb in 9.4 in datum_to_json(). So I'm thinking of rolling into this patch changes to json.c::datum_to_json() and friends to take analogous account of casts to jsonb (i.e. call the cast function, turn the resulting jsonb into a cstring and append it to the result).

Thoughts?

cheers

andrew


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to