On Mon, Nov 30, 2015 at 6:17 PM, Kyotaro HORIGUCHI <
horiguchi.kyot...@lab.ntt.co.jp> wrote:
> ====== TODO or random thoughts, not restricted on this patch.
> - This patch doesn't contain planner part, it must be aware of
>   async execution in order that this can be  in effective.

How will you decide whether sync-execution is cheaper than parallel
execution.  Do you have some specific cases in mind where async
execution will be more useful than parallel execution?

> - Some measture to control execution on bgworker would be
>   needed. At least merge join requires position mark/reset
>   functions.
> - Currently, more tuples make reduce effectiveness of parallel
>   execution, some method to transfer tuples in larger unit would
>   be needed, or would be good to have shared workmem?

Yeah, I think here one thing we need to figure out is whether the
performance bottleneck is due to the amount of data that is transferred
between worker and master or something else. One idea could be to pass
TID and may be keep the buffer pin (which will be released by master
backend), but on the other hand if we have to perform costly target list
evaluation by bgworker, then it might be beneficial to pass the projected
list back.

With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Reply via email to