doc: Mention GIN indexes support parallel builds.
authorFujii Masao <[email protected]>
Thu, 19 Jun 2025 00:12:34 +0000 (09:12 +0900)
committerFujii Masao <[email protected]>
Thu, 19 Jun 2025 00:12:34 +0000 (09:12 +0900)
Commit 8492feb98f6 added support for parallel CREATE INDEX on GIN indexes.
However, previously two places in the documentation and two in the source
code comments still stated that only B-tree and BRIN indexes support
parallel builds.

This commit updates those references to correctly include GIN indexes.

Author: Fujii Masao <[email protected]>
Reviewed-by: Robert Treat <[email protected]>
Discussion: https://postgr.es/m/7d27d068-90e2-4022-9bd7-09b0fd3d4f47@oss.nttdata.com

doc/src/sgml/config.sgml
doc/src/sgml/ref/create_index.sgml
src/backend/catalog/index.c
src/backend/optimizer/plan/planner.c

index 5ea554ad3c36d199909fa359c5b3dd3bc8d54a4c..b265cc89c9d460f08b64ee7df53b305bb2dfc0f5 100644 (file)
@@ -2894,7 +2894,8 @@ include_dir 'conf.d'
          Sets the maximum number of parallel workers that can be
          started by a single utility command.  Currently, the parallel
          utility commands that support the use of parallel workers are
-         <command>CREATE INDEX</command> when building a B-tree or BRIN index,
+         <command>CREATE INDEX</command> when building a B-tree,
+         GIN, or BRIN index,
          and <command>VACUUM</command> without <literal>FULL</literal>
          option.  Parallel workers are taken from the pool of processes
          established by <xref linkend="guc-max-worker-processes"/>, limited
index 147a8f7587c71515a74fe364f0f36eeda5353dab..b9c679c41e8dbc699760921401a47d4cd0c00218 100644 (file)
@@ -814,7 +814,7 @@ Indexes:
    leveraging multiple CPUs in order to process the table rows faster.
    This feature is known as <firstterm>parallel index
    build</firstterm>.  For index methods that support building indexes
-   in parallel (currently, B-tree and BRIN),
+   in parallel (currently, B-tree, GIN, and BRIN),
    <varname>maintenance_work_mem</varname> specifies the maximum
    amount of memory that can be used by each index build operation as
    a whole, regardless of how many worker processes were started.
index 739a92bdcc1ca060a52df0955dab4cf8fc0cd529..aa216683b74fe9921e33293fb56c0ccffbad9ac7 100644 (file)
@@ -3020,7 +3020,7 @@ index_build(Relation heapRelation,
 
    /*
     * Determine worker process details for parallel CREATE INDEX.  Currently,
-    * only btree and BRIN have support for parallel builds.
+    * only btree, GIN, and BRIN have support for parallel builds.
     *
     * Note that planner considers parallel safety for us.
     */
index ff65867eebee7f3bc347c4380efffbac26d1c41a..549aedcfa991adf5d3f242e6389c2234c4b8d07f 100644 (file)
@@ -6879,7 +6879,7 @@ plan_cluster_use_sort(Oid tableOid, Oid indexOid)
  *
  * tableOid is the table on which the index is to be built.  indexOid is the
  * OID of an index to be created or reindexed (which must be an index with
- * support for parallel builds - currently btree or BRIN).
+ * support for parallel builds - currently btree, GIN, or BRIN).
  *
  * Return value is the number of parallel worker processes to request.  It
  * may be unsafe to proceed if this is 0.  Note that this does not include the