Re: Parallel INSERT (INTO ... SELECT ...)
От | Amit Kapila |
---|---|
Тема | Re: Parallel INSERT (INTO ... SELECT ...) |
Дата | |
Msg-id | CAA4eK1KyftVDgovvRQmdV1b=nN0R-KqdWZqiu7jZ1GYQ7SO9OA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Parallel INSERT (INTO ... SELECT ...) (Greg Nancarrow <gregn4422@gmail.com>) |
Список | pgsql-hackers |
On Fri, Sep 25, 2020 at 9:11 AM Greg Nancarrow <gregn4422@gmail.com> wrote: > > > > What if this > > > ends up being invoked from inside C code? > > > > > > > I think it shouldn't be a problem unless one is trying to do something > > like insert into foreign key table. So, probably we can have an Assert > > to catch it if possible. Do you have any other idea? > > > > Note that the planner code updated by the patch does avoid creating a > Parallel INSERT plan in the case of inserting into a table with a > foreign key (so commandIds won't be created in the parallel-worker > code). > I'm not sure how to distinguish the "invoked from inside C code" case though. > I think if possible we can have an Assert to check if it is a parallel-worker and relation has a foreign-key. Similarly, we can enhance the check for any other un-safe use. This will prevent the illegal usage of inserts via parallel workers. -- With Regards, Amit Kapila.
В списке pgsql-hackers по дате отправления: