Re: Cache Hash Index meta page. - Mailing list pgsql-hackers

From Mithun Cy
Subject Re: Cache Hash Index meta page.
Date
Msg-id CAD__OuhJ29CeBif_fLGe4t9Vj_-cFXBwCXhjO+D_16TXbemY+g@mail.gmail.com
Whole thread Raw
In response to Re: Cache Hash Index meta page.  (Jesper Pedersen <jesper.pedersen@redhat.com>)
Responses Re: Cache Hash Index meta page.
Re: Cache Hash Index meta page.
List pgsql-hackers

On Sep 2, 2016 7:38 PM, "Jesper Pedersen" <jesper.pedersen@redhat.com> wrote:
> Could you provide a rebased patch based on Amit's v5 ?

Please find the the patch, based on Amit's V5.

I have fixed following things

1. now in "_hash_first" we check if (opaque->hasho_prevblkno == InvalidBlockNumber) to see if bucket is from older version hashindex and has been upgraded. Since as of now InvalidBlockNumber is one value greater than maximum value the variable "metap->hashm_maxbucket" can be set (see _hash_expandtable). We can distinguish it from rest. I tested the upgrade issue reported by amit. It is fixed now.

2. One case which buckets hasho_prevblkno is used is where we do backward scan. So now before testing for previous block number I test whether current page is bucket page if so we end the bucket scan (see changes in _hash_readprev). On other places where hasho_prevblkno is used it is not for bucket page, so I have not put any extra check to verify if is a bucket page.

Attachment

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [PATCH] Alter or rename enum value
Next
From: Claudio Freire
Date:
Subject: Re: Vacuum: allow usage of more than 1GB of work mem