Re: [PATCHES] Index creation takes for ever - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: [PATCHES] Index creation takes for ever
Date
Msg-id 200309071625.h87GPC810281@candle.pha.pa.us
Whole thread Raw
In response to Re: [PATCHES] Index creation takes for ever  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > Tom Lane wrote:
> >>> * Order duplicate index entries by tid for faster heap lookups
> >
> >> I don't know why that TODO entry exists, but I think the idea is
> >> counterproductive.
>
> > I assume you are talking about a unique index that probably only has a
> > few non-expired rows (in which case the newer rows first is better).
> > The TODO deals with cases where you have lots of valid duplicate index
> > rows, and you want to spin through all the matching rows in heap order
> > rather than randomly.
>
> Maybe so, but it would degrade the performance in the unique-index case
> if we do it as the TODO is worded.

Yes, the wording is just a guide.

> My own opinion is that the bitmap-index-lookup approach will be superior
> to trying to keep the index entries in TID order.  (That's the idea
> we've been discussing for awhile of separating the heap-fetch stage from
> the index-scan stage: scan the index, make a sparse bitmap of the TIDs
> we need to visit, possibly AND or OR this bitmap with maps derived from
> other indexes, and finally visit the rows in heap order.)

Oh, yes.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: [PATCHES] Index creation takes for ever
Next
From: Peter Eisentraut
Date:
Subject: Re: Notices for redundant operations