From 26349564d145dc6e6f6321e77533108ebe64b0bb Mon Sep 17 00:00:00 2001 From: kommih Date: Thu, 7 Feb 2019 16:13:56 +1100 Subject: [PATCH 1/3] Rename indexam.sgml to am.sgml Reorganize am as both table and index There is not much table access methods info. --- doc/src/sgml/{indexam.sgml => am.sgml} | 55 +++++++++++++++++--------- doc/src/sgml/filelist.sgml | 2 +- doc/src/sgml/postgres.sgml | 2 +- doc/src/sgml/xindex.sgml | 2 +- 4 files changed, 40 insertions(+), 21 deletions(-) rename doc/src/sgml/{indexam.sgml => am.sgml} (97%) diff --git a/doc/src/sgml/indexam.sgml b/doc/src/sgml/am.sgml similarity index 97% rename from doc/src/sgml/indexam.sgml rename to doc/src/sgml/am.sgml index b56d3b3daa..b2a97f20aa 100644 --- a/doc/src/sgml/indexam.sgml +++ b/doc/src/sgml/am.sgml @@ -1,16 +1,34 @@ - + - - Index Access Method Interface Definition + + Access Method Interface Definition This chapter defines the interface between the core - PostgreSQL system and index access - methods, which manage individual index types. The core system - knows nothing about indexes beyond what is specified here, so it is - possible to develop entirely new index types by writing add-on code. + PostgreSQL system and access + methods, which manage individual INDEX + and TABLE types. The core system knows nothing + about these access methods beyond what is specified here, so it is + possible to develop entirely new access method types by writing add-on code. + + Overview of Table access methods + + + All Tables in PostgreSQL are the primary + data store. Each table is stored as its own physical relation + and so is described by an entry in the pg_class + catalog. The table contents are entirely under the control of its + access method. (All the access methods furthermore use the standard page + layout described in .) + + + + + + Overview of Index access methods + All indexes in PostgreSQL are what are known technically as secondary indexes; that is, the index is @@ -43,7 +61,7 @@ are reclaimed. - + Basic API Structure for Indexes @@ -217,9 +235,9 @@ typedef struct IndexAmRoutine conditions. - + - + Index Access Method Functions @@ -710,9 +728,9 @@ amparallelrescan (IndexScanDesc scan); the beginning. - + - + Index Scanning @@ -865,9 +883,9 @@ amparallelrescan (IndexScanDesc scan); if its internal implementation is unsuited to one API or the other. - + - + Index Locking Considerations @@ -979,9 +997,9 @@ amparallelrescan (IndexScanDesc scan); reduce the frequency of such transaction cancellations. - + - + Index Uniqueness Checks @@ -1128,9 +1146,9 @@ amparallelrescan (IndexScanDesc scan); - + - + Index Cost Estimation Functions @@ -1377,5 +1395,6 @@ cost_qual_eval(&index_qual_cost, path->indexquals, root); Examples of cost estimator functions can be found in src/backend/utils/adt/selfuncs.c. + diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index a03ea1427b..52a5efca94 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -89,7 +89,7 @@ - + diff --git a/doc/src/sgml/postgres.sgml b/doc/src/sgml/postgres.sgml index 96d196d229..9dce0c5f81 100644 --- a/doc/src/sgml/postgres.sgml +++ b/doc/src/sgml/postgres.sgml @@ -250,7 +250,7 @@ &tablesample-method; &custom-scan; &geqo; - &indexam; + &am; &generic-wal; &btree; &gist; diff --git a/doc/src/sgml/xindex.sgml b/doc/src/sgml/xindex.sgml index 9446f8b836..4fa821160c 100644 --- a/doc/src/sgml/xindex.sgml +++ b/doc/src/sgml/xindex.sgml @@ -36,7 +36,7 @@ described in pg_am. It is possible to add a new index access method by writing the necessary code and then creating an entry in pg_am — but that is - beyond the scope of this chapter (see ). + beyond the scope of this chapter (see ). -- 2.20.1.windows.1