Re: Custom table AMs need to include heapam.h because ofBulkInsertState

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: Custom table AMs need to include heapam.h because ofBulkInsertState
Дата
Msg-id 20190717233611.h3gpcj4yypymmsax@alap3.anarazel.de
обсуждение исходный текст
Ответ на Re: Custom table AMs need to include heapam.h because of BulkInsertState  (David Rowley <david.rowley@2ndquadrant.com>)
Ответы Re: Custom table AMs need to include heapam.h because of BulkInsertState  (David Rowley <david.rowley@2ndquadrant.com>)
Список pgsql-hackers
Hi,

On 2019-07-18 11:29:37 +1200, David Rowley wrote:
> On Wed, 17 Jul 2019 at 06:46, Andres Freund <andres@anarazel.de> wrote:
> > 1) Have ExecFindPartition() return via a bool* whether the partition is
> >    being accessed for the first time. In copy.c push the partition onto
> >    a list of to-be-bulk-finished tables.
> > 2) Add a execPartition.c function that returns all the used tables from
> >    a PartitionTupleRouting*.
> 
> #2 seems better than #1 as it does not add overhead to ExecFindPartition().

I don't see how #1 would add meaningful overhead compared to the other
costs of that function.  Wouldn't it just be adding if (isnew) *isnew =
false; to the "/* ResultRelInfo already built */" branch, and the
reverse to the else?  That got to be several orders of magnitude cheaper
than e.g. FormPartitionKeyDatum() which is unconditionally executed?


> Are you thinking this should go back into v12, or just for v13 only?

Not sure, tbh. Probably depends a bit on how complicated it'd look?

Greetings,

Andres Freund



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Gareth Palmer
Дата:
Сообщение: Re: [PATCH] Implement INSERT SET syntax
Следующее
От: Melanie Plageman
Дата:
Сообщение: Re: Extracting only the columns needed for a query