From: | Alexander Korotkov <aekorotkov(at)gmail(dot)com> |
---|---|
To: | Greg Stark <stark(at)mit(dot)edu> |
Cc: | Bruce Momjian <bruce(at)momjian(dot)us>, Peter Geoghegan <pg(at)heroku(dot)com>, Andrew Dunstan <andrew(at)dunslane(dot)net>, Oleg Bartunov <obartunov(at)gmail(dot)com>, Tomas Vondra <tv(at)fuzzy(dot)cz>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: jsonb and nested hstore |
Date: | 2014-03-13 12:21:15 |
Message-ID: | CAPpHfds4xmg5zOP+1CtrrqnM6wxhh2A7j11nnJeosa76UoWxyg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Mar 13, 2014 at 1:21 PM, Greg Stark <stark(at)mit(dot)edu> wrote:
> Well these are just normal gin and gist indexes. If we want to come up
> with new index operator classess we can still do that and keep the old
> ones if necessary. Even that seems pretty unlikely from past experience.
>
> I'm actually pretty sanguine even about keeping the GIST opclass. If
> it has bugs then the bugs only affect people who use this non-default
> opclass and we can fix them. It doesn't risk questioning any basic
> design choices in the patch.
>
> It does sound like the main question here is which opclass should be
> the default. From the discussion there's a jsonb_hash_ops which works
> on all input values but supports fewer operators and a jsonb_ops which
> supports more operators but can't handle json with larger individual
> elements. Perhaps it's better to make jsonb_hash_ops the default so at
> least it's always safe to create a default gin index?
>
A couple of thoughts from me:
1) We can evade length limitation if GIN index by truncating long values
and setting recheck flag. We can introduce some indicator of truncated
value like zero byte at the end.
2) jsonb_hash_ops can be extended to handle keys queries too. We can
preserve one bit in hash as flag indicating whether it's a hash of key or
hash of path to value. For sure, such index would be a bit larger. Also,
jsonb_hash_ops can be split into two: with and without keys.
------
With best regards,
Alexander Korotkov.
From | Date | Subject | |
---|---|---|---|
Next Message | Oleg Bartunov | 2014-03-13 12:28:50 | Re: jsonb and nested hstore |
Previous Message | Andres Freund | 2014-03-13 12:12:14 | Re: 9a57858f1103b89a5674f0d50c5fe1f756411df6 |