Re: CREATE INDEX and HOT - revised design - Mailing list pgsql-hackers

From Pavan Deolasee
Subject Re: CREATE INDEX and HOT - revised design
Date
Msg-id 2e78013d0703291034y575e3dd8l2e72c6cfadba794c@mail.gmail.com
Whole thread Raw
In response to Re: CREATE INDEX and HOT - revised design  (Gregory Stark <stark@enterprisedb.com>)
Responses Re: CREATE INDEX and HOT - revised design  (Bruce Momjian <bruce@momjian.us>)
Re: CREATE INDEX and HOT - revised design  (Gregory Stark <stark@enterprisedb.com>)
List pgsql-hackers


On 3/29/07, Gregory Stark <stark@enterprisedb.com> wrote:
Besides, it seems if people are
happy to have indexes take a long time to build they could just do a
concurrent build.

I think we discussed this earlier. One of the down-side of CIC is that
it needs two complete heap scans. Apart from that CIC itself needs
to wait for all existing transactions to finish and more than one
instance of CIC can not be run on a table.
 
Earlier we were talking about not inserting any HOT tuples until the index
became valid. The goal of having an xid on the index was so we would know when
we could start doing HOT updates again. That seems like a much lesser cost
than not being able to use the index until all live transactions exit.

What I am proposing is to keep index unusable for existing transactions.
The index is available for all new transactions even if there are unfinished
existing transactions. Is that a big problem ? Well, I still need buy-in and
review from Tom and others on the design, but it seems workable to me.


Thanks,
Pavan


--

EnterpriseDB     http://www.enterprisedb.com

pgsql-hackers by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: Patch queue concern
Next
From: Bruce Momjian
Date:
Subject: Re: Patch queue concern