From: | Andrew Dunstan <andrew(dot)dunstan(at)pgexperts(dot)com> |
---|---|
To: | PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | json, jsonb, and casts |
Date: | 2014-11-06 20:49:16 |
Message-ID: | 545BDECC.7010304@pgexperts.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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
From | Date | Subject | |
---|---|---|---|
Next Message | Jim Nasby | 2014-11-06 20:55:37 | Re: Proposal: Log inability to lock pages during vacuum |
Previous Message | Alvaro Herrera | 2014-11-06 20:47:40 | Re: Tweaking Foreign Keys for larger tables |