postgresql/src/include/access
Tom Lane cbfa92c23c Improve index-only scans to avoid repeated access to the index page.
We copy all the matched tuples off the page during _bt_readpage, instead of
expensively re-locking the page during each subsequent tuple fetch.  This
costs a bit more local storage, but not more than 2*BLCKSZ worth, and the
reduction in LWLock traffic is certainly worth that.  What's more, this
lets us get rid of the API wart in the original patch that said an index AM
could randomly decline to supply an index tuple despite having asserted
pg_am.amcanreturn.  That will be important for future improvements in the
index-only-scan feature, since the executor will now be able to rely on
having the index data available.
2011-10-09 00:21:08 -04:00
..
attnum.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
clog.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
genam.h Support index-only scans using the visibility map to avoid heap fetches. 2011-10-07 20:14:13 -04:00
gin_private.h Allow more include files to be compiled in their own by adding missing 2011-08-27 11:05:33 -04:00
gin.h Clean up the #include mess a little. 2011-09-04 01:13:16 -04:00
gist_private.h Support GiST index support functions that want to cache data across calls. 2011-09-30 19:48:57 -04:00
gist.h Start using flexible array members 2011-06-16 22:45:38 +03:00
gistscan.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
hash.h Allow more include files to be compiled in their own by adding missing 2011-08-27 11:05:33 -04:00
heapam.h Clean up the #include mess a little. 2011-09-04 01:13:16 -04:00
hio.h Try again to make the visibility map crash safe. 2011-06-27 13:55:55 -04:00
htup.h Allow more include files to be compiled in their own by adding missing 2011-08-27 11:05:33 -04:00
itup.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
multixact.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
nbtree.h Improve index-only scans to avoid repeated access to the index page. 2011-10-09 00:21:08 -04:00
printtup.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
reloptions.h Change the way string relopts are allocated. 2011-08-09 15:25:44 +03:00
relscan.h Improve index-only scans to avoid repeated access to the index page. 2011-10-09 00:21:08 -04:00
rewriteheap.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
rmgr.h Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
sdir.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
skey.h Pass collations to functions in FunctionCallInfoData, not FmgrInfo. 2011-04-12 19:19:24 -04:00
slru.h Use callbacks in SlruScanDirectory for the actual action 2011-10-04 14:03:23 -03:00
subtrans.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
sysattr.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
transam.h Make the visibility map crash-safe. 2011-06-21 23:04:40 -04:00
tupconvert.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
tupdesc.h Enable CHECK constraints to be declared NOT VALID 2011-06-30 11:24:31 -04:00
tupmacs.h Stamp copyrights for year 2011. 2011-01-01 13:18:15 -05:00
tuptoaster.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
twophase_rmgr.h Renumber 2PC resource managers so that compared to 9.0, predicate lock rmgr 2011-06-14 12:36:31 +03:00
twophase.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00
valid.h Pass collations to functions in FunctionCallInfoData, not FmgrInfo. 2011-04-12 19:19:24 -04:00
visibilitymap.h Make the visibility map crash-safe. 2011-06-21 23:04:40 -04:00
xact.h Clean up the #include mess a little. 2011-09-04 01:13:16 -04:00
xlog_internal.h Move Timestamp/Interval typedefs and basic macros into datatype/timestamp.h. 2011-09-09 13:23:41 -04:00
xlog.h Move Timestamp/Interval typedefs and basic macros into datatype/timestamp.h. 2011-09-09 13:23:41 -04:00
xlogdefs.h pgindent run before PG 9.1 beta 1. 2011-04-10 11:42:00 -04:00
xlogutils.h Remove unnecessary #include references, per pgrminclude script. 2011-09-01 10:04:27 -04:00