Re: [HACKERS] Hash Indexes - Mailing list pgsql-hackers

From Robert Haas
Subject Re: [HACKERS] Hash Indexes
Date
Msg-id CA+TgmobFT6e6KKdDAhRKv=GnXkiH1DYrW8SAtDBOtfxV3P3ujg@mail.gmail.com
Whole thread Raw
In response to Re: [HACKERS] Hash Indexes  (Amit Kapila <amit.kapila16@gmail.com>)
Responses Re: [HACKERS] Hash Indexes  (Amit Kapila <amit.kapila16@gmail.com>)
List pgsql-hackers
On Tue, Dec 20, 2016 at 4:51 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:
> We have mainly four actions for squeeze operation, add tuples to the
> write page, empty overflow page, unlinks overflow page, make it free
> by setting the corresponding bit in overflow page.  Now, if we don't
> log the changes to write page and freeing of overflow page as one
> operation, then won't query on standby can either see duplicate tuples
> or miss the tuples which are freed in overflow page.

No, I think you could have two operations:

1. Move tuples from the "read" page to the "write" page.

2. Unlink the overflow page from the chain and mark it free.

If we fail after step 1, the bucket chain might end with an empty
overflow page, but that's OK.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Fujii Masao
Date:
Subject: Re: [HACKERS] Make pg_basebackup -x stream the default
Next
From: Andres Freund
Date:
Subject: Re: [HACKERS] Time to drop old-style (V0) functions?