On 2014-02-27 15:06:33 -0500, Andrew Dunstan wrote: > You realize that this API dates from 9.3 and has been used in numerous > extensions, right? So the names are pretty well fixed, for good or ill.
Sure. Doesn't prevent adding a couple more comments tho. I've only noticed this because I opened the header as a reference when reading your patch. Anyway, do something based on that feedback or not, your choice ;)
Can I ask why I can do this:
SELECT review %> 'product'->'title' as product_title FROM rating;
But I can't do this:
SELECT review->'product'->'title' as product_title FROM rating;
ERROR: operator does not exist: hstore -> hstore LINE 1: explain select review -> 'product'::hstore ->'title' as prod...
Yet I can do this:
SELECT review::json->'product'->'title' as product_title FROM rating;
I don't think this complaint has anything to do with the text you quoted, so you've kinda hijacked the thread slightly.
Apologies. I'd just given the patches my first test-drive and replied to the last message on the thread.
But anyway, I think we've seen enough of these to conclude that the casts from hstore to jsonb and back should not be implicit. I am fairly confident that changing that would fix your complaint and the similar one that Peter Geoghegan had.