RE: Parallel INSERT (INTO ... SELECT ...)

From: "tsunakawa(dot)takay(at)fujitsu(dot)com" <tsunakawa(dot)takay(at)fujitsu(dot)com>
To: "houzj(dot)fnst(at)cn(dot)fujitsu(dot)com" <houzj(dot)fnst(at)cn(dot)fujitsu(dot)com>, Greg Nancarrow <gregn4422(at)gmail(dot)com>
Cc: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Antonin Houska <ah(at)cybertec(dot)at>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, vignesh C <vignesh21(at)gmail(dot)com>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: RE: Parallel INSERT (INTO ... SELECT ...)
Date: 2021-01-26 05:36:24
Message-ID: TYAPR01MB299057A61D651E114C08F2E3FEBC0@TYAPR01MB2990.jpnprd01.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

From: Hou, Zhijie <houzj(dot)fnst(at)cn(dot)fujitsu(dot)com>
> IMO, max_parallel_hazard() only check the parent table's default expressions,
> But if the table has partitions and its partition have its own default expressions,
> max_parallel_hazard() seems does not check that.
> And we seems does not check that too.
>
> I am not sure should we allow parallel insert for this case ?

I think we can allow parallel insert in this case, because the column value is determined according to the DEFAULT definition of the target table specified in the INSERT statement. This is described here:

https://www.postgresql.org/docs/devel/sql-createtable.html

"Defaults may be specified separately for each partition. But note that a partition's default value is not applied when inserting a tuple through a partitioned table."

So the parallel-unsafe function should not be called.

Regards
Takayuki Tsunakawa

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message japin 2021-01-26 05:46:11 Re: Support ALTER SUBSCRIPTION ... ADD/DROP PUBLICATION ... syntax
Previous Message Bharath Rupireddy 2021-01-26 04:55:48 Re: Support ALTER SUBSCRIPTION ... ADD/DROP PUBLICATION ... syntax