json, jsonb, and casts - Mailing list pgsql-hackers

From Andrew Dunstan
Subject json, jsonb, and casts
Date
Msg-id 545BDECC.7010304@pgexperts.com
Whole thread Raw
Responses Re: json, jsonb, and casts  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
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



pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: What exactly is our CRC algorithm?
Next
From: Alvaro Herrera
Date:
Subject: Re: Tweaking Foreign Keys for larger tables