Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1WiPUl-0007hs-DN for pgsql-hackers@arkaria.postgresql.org; Thu, 08 May 2014 14:40:23 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1WiPUk-0007LO-Sh for pgsql-hackers@arkaria.postgresql.org; Thu, 08 May 2014 14:40:22 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1WiPUj-0007Ky-T0 for pgsql-hackers@postgresql.org; Thu, 08 May 2014 14:40:21 +0000 Received: from momjian.us ([72.94.173.45]) by magus.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1WiPUg-0008PA-M8 for pgsql-hackers@postgresql.org; Thu, 08 May 2014 14:40:21 +0000 Received: from bruce by momjian.us with local (Exim 4.72) (envelope-from ) id 1WiPUa-0001LF-Go; Thu, 08 May 2014 10:40:12 -0400 Date: Thu, 8 May 2014 10:40:12 -0400 From: Bruce Momjian To: Andres Freund Cc: Tom Lane , "David E. Wheeler" , Greg Stark , Robert Haas , Heikki Linnakangas , Andrew Dunstan , Peter Geoghegan , "pgsql-hackers@postgresql.org" Subject: Re: default opclass for jsonb (was Re: Call for GIST/GIN/SP-GIST opclass documentation) Message-ID: <20140508144012.GQ30817@momjian.us> References: <16527.1398214220@sss.pgh.pa.us> <20140506201048.GI30817@momjian.us> <16769.1399407530@sss.pgh.pa.us> <20140506212020.GK30817@momjian.us> <57E8AA44-F816-45F2-BB61-5A854FFB0A97@justatheory.com> <28554.1399414853@sss.pgh.pa.us> <20140508134701.GO30817@momjian.us> <5819.1399558614@sss.pgh.pa.us> <20140508143404.GP30817@momjian.us> <20140508143705.GA1703@awork2.anarazel.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20140508143705.GA1703@awork2.anarazel.de> User-Agent: Mutt/1.5.20 (2009-06-14) X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org On Thu, May 8, 2014 at 04:37:05PM +0200, Andres Freund wrote: > On 2014-05-08 10:34:04 -0400, Bruce Momjian wrote: > > On Thu, May 8, 2014 at 10:16:54AM -0400, Tom Lane wrote: > > > > Can we hash just the values, not the keys, in jsonb_ops, and hash the > > > > combo in jsonb_hash_ops. That would give us key-only lookups without a > > > > recheck. > > > > > > No, because there's nothing in JSON limiting the length of keys, any more > > > than values. > > > > > > I think the idea of hashing only keys/values that are "too long" is a > > > reasonable compromise. I've not finished coding it (because I keep > > > getting distracted by other problems in the code :-() but it does not > > > look to be very difficult. I'm envisioning the cutoff as being something > > > like 128 bytes; in practice that would mean that few if any keys get > > > hashed, I think. > > > > Yes, that would be nice. Ideally we would not be doing this so close to > > beta, but it is what it is, and if we need to break binary compatibility > > after beta1, at least we have pg_upgrade. > > If we break binary compatibility pg_upgrade won't be able to help. Since > the data files wont be, err, binary compatibile. Oops, yeah. pg_upgrade only helps with system table changes. We would have to require users to dump/reload any changed tables or recreate any indexs. -- Bruce Momjian http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers