On Thu, 20 Oct 2022 at 16:03, Zhang Mingli <zmlpostg...@gmail.com> wrote:
> As said in parallel.smgl:
>
> In a parallel sequential scan, the table's blocks will be divided among the 
> cooperating processes. Blocks are handed out one at a time, so that access to 
> the table remains sequential.

> Shall we update the documents?

Yeah, 56788d215 should have updated that. Seems I didn't expect that
level of detail in the docs. I've attached a patch to address this.

I didn't feel the need to go into too much detail about how the sizes
of the ranges are calculated. I tried to be brief, but I think I did
leave enough in there so that a reader will know that we don't just
make the range length <nblocks> / <nworkers>.

I'll push this soon if nobody has any other wording suggestions.

Thanks for the report.

David
diff --git a/doc/src/sgml/parallel.sgml b/doc/src/sgml/parallel.sgml
index c37fb67065..e556786e2b 100644
--- a/doc/src/sgml/parallel.sgml
+++ b/doc/src/sgml/parallel.sgml
@@ -272,8 +272,9 @@ EXPLAIN SELECT * FROM pgbench_accounts WHERE filler LIKE 
'%x%';
     <listitem>
       <para>
         In a <emphasis>parallel sequential scan</emphasis>, the table's blocks 
will
-        be divided among the cooperating processes.  Blocks are handed out one
-        at a time, so that access to the table remains sequential.
+        be divided into ranges and shared among the cooperating processes.  
Each
+        worker process will complete the scanning of its given range of blocks 
before
+        requesting an additional range of blocks.
       </para>
     </listitem>
     <listitem>

Reply via email to