Re: Hash Indexes - Mailing list pgsql-hackers

From Greg Stark
Subject Re: Hash Indexes
Date
Msg-id CAM-w4HP2Bfy9wL254GYmbgePWWBMvuvVbMMM=yGLPaU9dn4=eQ@mail.gmail.com
Whole thread Raw
In response to Re: Hash Indexes  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Hash Indexes  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Hash Indexes  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
On Thu, Sep 22, 2016 at 3:23 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> But to kick the hash AM as such to the curb is to say
> "sorry, there will never be O(1) index lookups in Postgres".

Well there's plenty of halfway solutions for that. We could move hash
indexes to contrib or even have them in core as experimental_hash or
unlogged_hash until the day they achieve their potential.

We definitely shouldn't discourage people from working on hash indexes
but we probably shouldn't have released ten years worth of a feature
marked "please don't use this" that's guaranteed to corrupt your
database and cause weird problems if you use it a any of a number of
supported situations (including non-replicated system recovery that
has been a bedrock feature of Postgres for over a decade).

Arguably adding a hashed btree opclass and relegating the existing
code to an experimental state would actually encourage development
since a) Users would actually be likely to use the hashed btree
opclass so any work on a real hash opclass would have a real userbase
ready and waiting for delivery, b) delivering a real hash opclass
wouldn't involve convincing users to unlearn a million instructions
warning not to use this feature and c) The fear of breaking existing
users use cases and databases would be less and pg_upgrade would be an
ignorable problem at least until the day comes for the big cutover of
the default to the new opclass.

-- 
greg



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Rebranding OS X as macOS
Next
From: Tomas Vondra
Date:
Subject: Re: Speed up Clog Access by increasing CLOG buffers