pg.ddx.io  pgsql-docs@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tomas Vondra <tomas@vondra.me>
To: Egor Rogov <e.rogov@postgrespro.ru>
To: pgsql-docs@lists.postgresql.org
Subject: Re: Parallel index build for BRIN
Date: Mon, 9 Dec 2024 19:54:42 +0100
Message-ID: <733bf5ec-2bb9-4e51-805d-b5e33a37609c@vondra.me> (raw)
In-Reply-To: <908b63e1-4b79-2889-98d1-1909cac39785@postgrespro.ru>
References: <114e2d5d-125e-07d8-94aa-5ad175fb7443@postgrespro.ru>
	<009f4101-29a2-850e-6767-72a9104ec89a@postgrespro.ru>
	<908b63e1-4b79-2889-98d1-1909cac39785@postgrespro.ru>

On 12/8/24 16:00, Egor Rogov wrote:
> Hi,
> 
> 
> On 17.11.2024 11:28, Egor Rogov wrote:
>> Hi everyone,
>>
>> This thread doesn't seem to have attracted attention, so let me try
>> again. Two documentation pages claim that B-tree is the only access
>> method that supports parallel building, which is no longer true. I
>> propose to fix it in a way like this:
>>
>> diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
>> index d54f9049569..b5b1580dee7 100644
>> --- a/doc/src/sgml/config.sgml
>> +++ b/doc/src/sgml/config.sgml
>> @@ -2835,7 +2835,7 @@ 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> only when building a B-tree
>> index,
>> +         <command>CREATE INDEX</command> when building a B-tree 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
>> diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/
>> create_index.sgml
>> index 621bc0e253c..208389e8006 100644
>> --- a/doc/src/sgml/ref/create_index.sgml
>> +++ b/doc/src/sgml/ref/create_index.sgml
>> @@ -808,7 +808,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, only B-tree),
>> +   in parallel (currently, B-tree 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.
> 
> 
> I've spotted another mention of B-tree being the only AM that supports
> parallel builds: comment in src/backend/catalog/index.c. As this mention
> is not visible to the users, I'd propose removing it altogether rather
> than fixing it. Updated patch is attached.
> 

Thanks for noticing this and the patches. You're right, this should have
been updated with the BRIN parallel builds. I'll get this committed
sometime the week.


regards

-- 
Tomas Vondra






view thread (7+ messages)  latest in thread

Message-ID: <733bf5ec-2bb9-4e51-805d-b5e33a37609c@vondra.me>
Permalink:  ../733bf5ec-2bb9-4e51-805d-b5e33a37609c@vondra.me/
Also on:    postgresql.org/message-id/733bf5ec-2bb9-4e51-805d-b5e33a37609c@vondra.me

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-docs@postgresql.org
  Cc: tomas@vondra.me, e.rogov@postgrespro.ru, pgsql-docs@lists.postgresql.org
  Subject: Re: Parallel index build for BRIN
  In-Reply-To: <733bf5ec-2bb9-4e51-805d-b5e33a37609c@vondra.me>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox