Replace simple constant pg_am.amcanreturn with an AM support function.
The need for this was debated when we put in the index-only-scan feature,
but at the time we had no near-term expectation of having AMs that could
support such scans for only some indexes; so we kept it simple. However,
the SP-GiST AM forces the issue, so let's fix it.
This patch only installs the new API; no behavior actually changes.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/3695a555136a6d179cac8ae48d5f90171d5b30e9
Modified Files
--------------
doc/src/sgml/catalogs.sgml | 15 +++++----
doc/src/sgml/indexam.sgml | 24 ++++++++++-----
src/backend/access/index/indexam.c | 22 ++++++++++++++
src/backend/access/nbtree/nbtree.c | 11 +++++++
src/backend/access/spgist/spgscan.c | 7 ++++
src/backend/optimizer/path/indxpath.c | 4 +-
src/backend/optimizer/util/plancat.c | 2 +-
src/include/access/genam.h | 1 +
src/include/access/nbtree.h | 1 +
src/include/access/spgist.h | 1 +
src/include/catalog/catversion.h | 2 +-
src/include/catalog/pg_am.h | 52 ++++++++++++++++----------------
src/include/catalog/pg_proc.h | 4 ++
src/include/nodes/relation.h | 2 +-
src/include/utils/rel.h | 1 +
15 files changed, 103 insertions(+), 46 deletions(-)