On Mon, Mar 3, 2014 at 06:59:37PM -0800, Josh Berkus wrote:
> Realistically, hstore will never go away. I'll bet you a round or two
> of pints that, if we get both hstore2 and jsonb, within 2 years the
> users of jsonb will be an order of magnitude more numerous that then
> users of hstore, but folks out there have apps already built against
> hstore1 and they're going to keep on the hstore path.
>
> In the discussion you haven't apparently caught up on yet, we did
> discuss moving *hstore* into core to make this whole thing easier.
> However, that fell afoul of the fact that we currently have no mechanism
> to move types between extensions and core without breaking upgrades for
> everyone. So the only reason hstore is still an extension is because of
> backwards-compatibility.
I have read last week's thread on this issue, and it certainly seems we
are in a non-ideal situation here.
The discussion centered around the split of JSONB in core and hstore in
contrib, the reason for some of these decisions, and what can make it
into PG 9.4.
I would like to take a different approach and explore what we
_eventually_ want, then back into what we have and what can be done for
9.4.
Basically, it seems we have heirchical hstore and JSONB which are
identical except for the input/output syntax. Many are confused how a
code split like that works long-term, and whether decisions made for 9.4
might limit future options.
There seems to be a basic tension that we can't move hstore into core,
must maintain backward-compatibility for hstore, and we want JSONB in
core. Long-term, having JSON in core and JSONB in contrib seems quite
odd.
So, I am going to ask a back-track question and ask why we can't move
hstore into core. Is this a problem with the oids of the hstore data
type and functions? Is this a pg_upgrade-only problem? Can this be
fixed?
Yes, I am ignoring what might be possible for 9.4, but I think these
questions must be asked if we are going to properly plan for post-9.4
changes.
-- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB
http://enterprisedb.com
+ Everyone has their own god. +