On 07/18/2013 10:39 PM, Alvaro Herrera wrote:
> To scan the index, we first obtain the TID of index tuple for page 0. If
> this returns a valid TID, we read that tuple to determine the min/max bounds
> for this page range. If it returns invalid, then the range is unsummarized,
> and the scan must return the whole range as needing scan. After this
> index entry has been processed, we obtain the TID of the index tuple for
> page 0+pagesPerRange (currently this is a compile-time constant, but
> there's no reason this cannot be a per-index property). Continue adding
> pagesPerRange until we reach the end of the heap.
Conceptually, this sounds like a good initial solution to the update
problem.
I still think we could do incremental updates to the minmax indexes per
the idea I discussed, but that could be a later version.
--
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com