Re: Parallel INSERT (INTO ... SELECT ...)
От | Greg Nancarrow |
---|---|
Тема | Re: Parallel INSERT (INTO ... SELECT ...) |
Дата | |
Msg-id | CAJcOf-e3OXoJab27DrTXt5FHKyBtuPPWRxbsCaO2cxJLkGu91g@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Parallel INSERT (INTO ... SELECT ...) (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>) |
Ответы |
Re: Parallel INSERT (INTO ... SELECT ...)
|
Список | pgsql-hackers |
On Wed, Oct 7, 2020 at 12:40 AM Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com> wrote: > In parallel, we are not doing anything(due to the same reason > explained in above comment) to find whether there is a foreign > partition or not while deciding to go with parallel/non-parallel copy, > we are just throwing an error during the first tuple insertion into > the partition. > > errmsg("cannot perform PARALLEL COPY if partition has BEFORE/INSTEAD > OF triggers, or if the partition is foreign partition"), > errhint("Try COPY without PARALLEL option"))); > I'm wondering whether code similar to the following can safely be used to detect a foreign partition: if (rel->rd_rel->relkind == RELKIND_PARTITIONED_TABLE) { int i; PartitionDesc pd = RelationGetPartitionDesc(rel); for (i = 0; i < pd->nparts; i++) { if (get_rel_relkind(pd->oids[i]) == RELKIND_FOREIGN_TABLE) { table_close(rel, NoLock); return false; } } } Thoughts? Regards, Greg Nancarrow Fujitsu Australia
В списке pgsql-hackers по дате отправления: