From fe8eaa54420cbb384bd5ad179495bb9774b6b48f Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Wed, 20 Mar 2024 11:51:53 -0400 Subject: [PATCH] docs: Merge separate chapters on built-in index AMs into one. The documentation index is getting very long, which makes it hard to find things. Since these chapters are all very similar in structure and content, merging them is a natural way of reducing the size of the toplevel index. Rather than actually combining all of the SGML into a single file, keep one file per , and add a glue file that includes all of them. Discussion: http://postgr.es/m/CA+Tgmob7_uoYuS2=rVwpVXaRwP-UXz+++saYTC-BCZ42QzSNKQ@mail.gmail.com --- doc/src/sgml/brin.sgml | 22 ++++++++++---------- doc/src/sgml/btree.sgml | 32 ++++++++++++++--------------- doc/src/sgml/filelist.sgml | 1 + doc/src/sgml/gin.sgml | 40 ++++++++++++++++++------------------ doc/src/sgml/gist.sgml | 28 ++++++++++++------------- doc/src/sgml/hash.sgml | 12 +++++------ doc/src/sgml/indextypes.sgml | 13 ++++++++++++ doc/src/sgml/postgres.sgml | 7 +------ doc/src/sgml/spgist.sgml | 36 ++++++++++++++++---------------- 9 files changed, 100 insertions(+), 91 deletions(-) create mode 100644 doc/src/sgml/indextypes.sgml diff --git a/doc/src/sgml/brin.sgml b/doc/src/sgml/brin.sgml index d898cc4720c..64fb520db7e 100644 --- a/doc/src/sgml/brin.sgml +++ b/doc/src/sgml/brin.sgml @@ -1,6 +1,6 @@ - + BRIN Indexes @@ -8,7 +8,7 @@ BRIN - + Introduction @@ -64,7 +64,7 @@ be more precise and more data blocks can be skipped during an index scan. - + Index Maintenance @@ -136,10 +136,10 @@ LOG: request for BRIN range summarization for index "brin_wi_idx" page 128 was See for details. - - + + - + Built-in Operator Classes @@ -743,7 +743,7 @@ LOG: request for BRIN range summarization for index "brin_wi_idx" page 128 was - + Operator Class Parameters @@ -808,11 +808,11 @@ LOG: request for BRIN range summarization for index "brin_wi_idx" page 128 was - + - + - + Extensibility @@ -1340,5 +1340,5 @@ typedef struct BrinOpcInfo float4_minmax_ops as an example of minmax, and box_inclusion_ops as an example of inclusion. + - diff --git a/doc/src/sgml/btree.sgml b/doc/src/sgml/btree.sgml index be8210286b6..2b3997988cf 100644 --- a/doc/src/sgml/btree.sgml +++ b/doc/src/sgml/btree.sgml @@ -1,6 +1,6 @@ - + B-Tree Indexes @@ -8,7 +8,7 @@ B-Tree - + Introduction @@ -30,9 +30,9 @@ btree AM make use of them. - + - + Behavior of B-Tree Operator Classes @@ -200,9 +200,9 @@ planner relies on them for optimization purposes. - + - + B-Tree Support Functions @@ -585,9 +585,9 @@ options(relopts local_relopts *) returns - + - + Implementation @@ -597,7 +597,7 @@ options(relopts local_relopts *) returns distribution for a much more detailed, internals-focused description of the B-Tree implementation. - + B-Tree Structure PostgreSQL B-Tree indexes are @@ -627,9 +627,9 @@ options(relopts local_relopts *) returns the tree structure by creating a new root page that is one level above the original root page. - + - + Bottom-up Index Deletion B-Tree indexes are not directly aware that under MVCC, there might @@ -731,9 +731,9 @@ options(relopts local_relopts *) returns two logical rows whose lifetimes span the same VACUUM cycle). - + - + Deduplication A duplicate is a leaf page tuple (a tuple that points to a table @@ -908,7 +908,7 @@ options(relopts local_relopts *) returns - - + + - + diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 6360707d9f6..3fb0709f5df 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -85,6 +85,7 @@ + diff --git a/doc/src/sgml/gin.sgml b/doc/src/sgml/gin.sgml index 5bd1efae92e..46e87e01324 100644 --- a/doc/src/sgml/gin.sgml +++ b/doc/src/sgml/gin.sgml @@ -1,6 +1,6 @@ - + GIN Indexes @@ -8,7 +8,7 @@ GIN - + Introduction @@ -60,9 +60,9 @@ information about GIN on their website. - + - + Built-in Operator Classes @@ -140,9 +140,9 @@ See for details. - + - + Extensibility @@ -458,9 +458,9 @@ though the actual type might be something else depending on the operator. - + - + Implementation @@ -497,7 +497,7 @@ - + GIN Fast Update Technique @@ -535,9 +535,9 @@ GIN index. See for details. - + - + Partial Match Algorithm @@ -554,11 +554,11 @@ to be searched, or greater than zero if the index key is past the range that could match. - + - + - + GIN Tips and Tricks @@ -653,9 +653,9 @@ - + - + Limitations @@ -667,9 +667,9 @@ however that null key values contained within a non-null composite item or query value are supported. - + - + Examples @@ -709,6 +709,6 @@ - + - + diff --git a/doc/src/sgml/gist.sgml b/doc/src/sgml/gist.sgml index 8a19f156d83..3f7df103b83 100644 --- a/doc/src/sgml/gist.sgml +++ b/doc/src/sgml/gist.sgml @@ -1,6 +1,6 @@ - + GiST Indexes @@ -8,7 +8,7 @@ GiST - + Introduction @@ -38,9 +38,9 @@ web site. - + - + Built-in Operator Classes @@ -222,9 +222,9 @@ CREATE INDEX ON my_table USING GIST (my_inet_column inet_ops); - + - + Extensibility @@ -1260,12 +1260,12 @@ my_stratnum(PG_FUNCTION_ARGS) will accumulate for the duration of the operation. - + - + Implementation - + GiST Index Build Methods @@ -1314,10 +1314,10 @@ my_stratnum(PG_FUNCTION_ARGS) is ordered. - - + + - + Examples @@ -1382,6 +1382,6 @@ my_stratnum(PG_FUNCTION_ARGS) - + - + diff --git a/doc/src/sgml/hash.sgml b/doc/src/sgml/hash.sgml index e35911ebf8e..9e69ef91fe8 100644 --- a/doc/src/sgml/hash.sgml +++ b/doc/src/sgml/hash.sgml @@ -1,6 +1,6 @@ - + Hash Indexes @@ -8,7 +8,7 @@ Hash - + Overview @@ -108,9 +108,9 @@ with rapidly increasing number of rows. - + - + Implementation @@ -157,6 +157,6 @@ successfully. - + - + diff --git a/doc/src/sgml/indextypes.sgml b/doc/src/sgml/indextypes.sgml new file mode 100644 index 00000000000..94a2b01afcc --- /dev/null +++ b/doc/src/sgml/indextypes.sgml @@ -0,0 +1,13 @@ + + + +Built-in Index Access Methods + +&btree; +&gist; +&spgist; +&gin; +&brin; +&hash; + + diff --git a/doc/src/sgml/postgres.sgml b/doc/src/sgml/postgres.sgml index 1ac9d3a9b8f..e9a350234e7 100644 --- a/doc/src/sgml/postgres.sgml +++ b/doc/src/sgml/postgres.sgml @@ -258,12 +258,7 @@ break is not needed in a wider output rendering. &indexam; &generic-wal; &custom-rmgr; - &btree; - &gist; - &spgist; - &gin; - &brin; - &hash; + &indextypes; &storage; &transaction; &bki; diff --git a/doc/src/sgml/spgist.sgml b/doc/src/sgml/spgist.sgml index 102f8627bd0..6af93719b84 100644 --- a/doc/src/sgml/spgist.sgml +++ b/doc/src/sgml/spgist.sgml @@ -1,6 +1,6 @@ - + SP-GiST Indexes @@ -8,7 +8,7 @@ SP-GiST - + Introduction @@ -51,9 +51,9 @@ web site. - + - + Built-in Operator Classes @@ -191,9 +191,9 @@ search over indexed point or polygon data sets. - + - + Extensibility @@ -933,9 +933,9 @@ LANGUAGE C STRICT; PG_GET_COLLATION() mechanism. - + - + Implementation @@ -944,7 +944,7 @@ LANGUAGE C STRICT; know. - + SP-GiST Limits @@ -991,9 +991,9 @@ LANGUAGE C STRICT; leaf datum does not become any smaller within ten cycles of choose method calls. - + - + SP-GiST Without Node Labels @@ -1018,9 +1018,9 @@ LANGUAGE C STRICT; for choose to return spgAddNode, since the set of nodes is supposed to be fixed in such cases. - + - + <quote>All-the-Same</quote> Inner Tuples @@ -1056,11 +1056,11 @@ LANGUAGE C STRICT; depending on how much the inner_consistent function normally assumes about the meaning of the nodes. - + - + - + Examples @@ -1071,6 +1071,6 @@ LANGUAGE C STRICT; and src/backend/utils/adt/ to see the code. - + - +