> > 4. Maybe it also doesn't make sense to consider the parent relation's > > parallel_workers if Parallel Append is disabled > > (enable_parallel_append = off). That's because with a simple > > (non-parallel) Append running under Gather, all launched parallel > > workers process the same partition before moving to the next one. > > OTOH, one's intention of setting parallel_workers on the parent > > partitioned table would most likely be to distribute workers across > > partitions, which is only possible with parallel Append > > (enable_parallel_append = on). So, the new code should look like > > this: > > > > if (IS_PARTITIONED_REL(rel) && enable_parallel_append) > > parallel_workers = compute_parallel_worker(rel, -1, -1, > > max_parallel_workers_per_gather); > > Here is an updated version of the Seamus' patch that takes into account these > and other comments received on this thread so far. > Maybe warrants adding some tests too but I haven't. > > Seamus, please register this patch in the next commit-fest: > https://commitfest.postgresql.org/32/ > > If you haven't already, you will need to create a community account to use > that > site.
It seems the patch does not include the code that get the parallel_workers from new struct " PartitionedTableRdOptions ", Did I miss something ? Best regards, houzj