Re: Hash Indexes

Jesper Pedersen <jesper.pedersen@redhat.com>

From: Jesper Pedersen <jesper.pedersen@redhat.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Jeff Janes <jeff.janes@gmail.com>, Mithun Cy <mithun.cy@enterprisedb.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2016-09-27T19:06:14Z
Lists: pgsql-hackers
On 09/20/2016 09:02 AM, Amit Kapila wrote:
> On Fri, Sep 16, 2016 at 11:22 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
>>
>> I do want to work on it, but it is always possible that due to some
>> other work this might get delayed.  Also, I think there is always a
>> chance that while doing that work, we face some problem due to which
>> we might not be able to use that optimization.  So I will go with your
>> suggestion of removing hashscan.c and it's usage for now and then if
>> required we will pull it back.  If nobody else thinks otherwise, I
>> will update this in next patch version.
>>
>
> In the attached patch, I have removed the support of hashscans.  I
> think it might improve performance by few percentage (especially for
> single row fetch transactions) as we have registration and destroy of
> hashscans.
>
>

I have been running various tests, and applications with this patch 
together with the WAL v5 patch [1].

As I havn't seen any failures and doesn't currently have additional 
feedback I'm moving this patch to "Ready for Committer" for their feedback.

If others have comments, move the patch status back in the CommitFest 
application, please.

[1] 
https://www.postgresql.org/message-id/CAA4eK1KE%3D%2BkkowyYD0vmch%3Dph4ND3H1tViAB%2B0cWTHqjZDDfqg%40mail.gmail.com

Best regards,
  Jesper



Commits

  1. Remove _hash_wrtbuf() in favor of calling MarkBufferDirty().

  2. Fix race introduced by 6d46f4783efe457f74816a75173eb23ed8930020.

  3. Improve hash index bucket split behavior.

  4. Reduce pinning and buffer content locking for btree scans.