Re: Optimizing nested ConvertRowtypeExpr execution
От | Andres Freund |
---|---|
Тема | Re: Optimizing nested ConvertRowtypeExpr execution |
Дата | |
Msg-id | 20180401201032.wsyxsc6ajftjjm6x@alap3.anarazel.de обсуждение исходный текст |
Ответ на | Optimizing nested ConvertRowtypeExpr execution (Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>) |
Ответы |
Re: Optimizing nested ConvertRowtypeExpr execution
|
Список | pgsql-hackers |
Hi, On 2018-02-26 17:20:05 +0530, Ashutosh Bapat wrote: > In a multi-level partitioned table, a parent whole-row reference gets > translated into nested ConvertRowtypeExpr with child whole-row > reference as the leaf. During the execution, the child whole-row > reference gets translated into all all intermediate parents' whole-row > references, ultimately represented as parent's whole-row reference. > AFAIU, the intermediate translations are unnecessary. The leaf child > whole-row can be directly translated into top parent's whole-row > reference. Here's a WIP patch which does that by eliminating > intermediate ConvertRowtypeExprs during ExecInitExprRec(). Why is this done appropriately at ExecInitExpr() time, rather than at plan time? Seems like eval_const_expressions() would be a bit more appropriate (being badly named aside...)? - Andres
В списке pgsql-hackers по дате отправления: