Re: Parallel Inserts in CREATE TABLE AS
От | Zhihong Yu |
---|---|
Тема | Re: Parallel Inserts in CREATE TABLE AS |
Дата | |
Msg-id | CALNJ-vRPBFc+FvzPDVchfS5OwwFdC1FUiOHNyH5vrMqZ-0U6tQ@mail.gmail.com обсуждение исходный текст |
Ответ на | RE: Parallel Inserts in CREATE TABLE AS ("Hou, Zhijie" <houzj.fnst@cn.fujitsu.com>) |
Список | pgsql-hackers |
For set_append_rel_size(), it seems this is the difference between query_level != 1 and query_level == 1:
+ (root->parent_root->parse->CTASParallelInsInfo & CTAS_PARALLEL_INS_IGN_TUP_COST_APPEND) &&
Maybe extract the common conditions into its own expression / variable so that the code is easier to read.
Cheers
On Mon, Dec 14, 2020 at 4:50 AM Hou, Zhijie <houzj.fnst@cn.fujitsu.com> wrote:
Hi
> Attaching v11 patch set. Please review it further.
Currently with the patch, we can allow parallel CTAS when topnode is Gather.
When top-node is Append and Gather is the sub-node of Append, I think we can still enable
Parallel CTAS by pushing Parallel CTAS down to the sub-node Gather, such as:
Append
------>Gather
--------->Create table
------------->Seqscan
------>Gather
--------->create table
------------->Seqscan
And the use case seems common to me, such as:
select * from A where xxx union all select * from B where xxx;
I attatch a WIP patch which just show the possibility of this feature.
The patch is based on the latest v11-patch.
What do you think?
Best regards,
houzj
В списке pgsql-hackers по дате отправления: