I propose removing the "Included attributes in B-tree indexes" top-level section of chapter 63 from the user facing documentation. Chapter 63 concerns B-Tree operator classes themselves, in the abstract, so the fact that an operator class isn't needed for extra covering index columns isn't appropriate. It seems sufficient to only mention this once, in the CREATE INDEX docs.
Attached patch shows what I have in mind -- the total removal of this top-level section. -- Peter Geoghegan
From 293f1fc93771fa6be65867f53aa507fb30137230 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan <p...@bowt.ie> Date: Fri, 15 Jun 2018 10:45:29 -0700 Subject: [PATCH] Remove INCLUDE attributes section from docs. It doesn't seem useful to mention covering indexes in a chapter about the behavior of B-Tree operator classes. The fact that INCLUDE columns don't require a B-Tree operator class is already covered in the CREATE INDEX documentation. --- doc/src/sgml/btree.sgml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/doc/src/sgml/btree.sgml b/doc/src/sgml/btree.sgml index 336d026ea1..8bd0badb28 100644 --- a/doc/src/sgml/btree.sgml +++ b/doc/src/sgml/btree.sgml @@ -433,23 +433,6 @@ returns bool </sect1> -<sect1 id="btree-included-attributes"> - <title>Included attributes in B-tree indexes</title> - - <para> - As of <productname>PostgreSQL</productname> 11.0 there is an optional - INCLUDE clause, which allows to add non-key (included) attributes to index. - Those included attributes allow more queries to benefit from index-only scans. - We never use included attributes in ScanKeys for search. That allows us to - include into B-tree any datatypes, even those which don't have suitable - operator classes. Included columns only stored in regular tuples on leaf - pages. All pivot tuples on non-leaf pages and highkey tuples are truncated - to contain only key attributes. That helps to slightly reduce the size of - index. - </para> - -</sect1> - <sect1 id="btree-implementation"> <title>Implementation</title> -- 2.17.1