Bruce, > I have added another idea for index-only scans to the TODO list: > > A third idea would be for a heap scan to check if all rows are > > visible and if so set a per-table flag which can be checked by index > > scans. Any change to the table would have to clear the flag. To > > detect changes during the heap scan a counter could be set at the > > start and checked at the end --- if it is the same, the table has not > > been modified --- any table change would increment the counter.
Seems marginal at best. Checking overlap between the index and the FSM/DSM and only check dirty pages seems more intelligent, and able to cover a larger number of cases. -- --Josh Josh Berkus PostgreSQL @ Sun San Francisco ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match