Hi,
On 03/07/2017 04:01 AM, Andres Freund wrote:
> Hi,
>
> Attached is an updated version of the patchset, but more importantly
> some benchmark numbers.
>
I wanted to do a bit of testing and benchmarking on this, but 0004 seems
to be a bit broken. The patch does not apply anymore - there are some
conflicts in execQual.c, but I think I fixed those. But then I ran into
a bunch of compile-time errors, because some of the executor nodes still
reference bits that were moved elsewhere.
E.g. there's no targetlist in PlanState anymore, yet nodeGatherMerge and
nodeTableFuncscan do this:
gm_state->ps.targetlist = (List *) ExecInitExpr((Expr *) node->plan.targetlist, (PlanState *)
gm_state);
Some of the nodes also assign to ps.qual values that are (List *), but
that field was switched to ExprState. That needs fixing, I guess.
regards
--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services