On 2015-06-11 20:03:16 -0300, Alvaro Herrera wrote:
> Rewriter
>
> Parsing occurs as currently. During query rewrite, specifically at the
> bottom of the per-relation loop in fireRIRrules(), we will modify the
> query tree: each relation RTE containing a colstore will be replaced
> with a JoinExpr containing the relation as left child and the colstore
> as right child (1). The colstore RTE will be of a new RTEKind. For
> each such change, all Var nodes that point to attnums stored in the
> colstore will modified so that they reference the RTE of the colstore
> instead (2).
FWIW, I think this is a pretty bad place to tackle this. For one I think
we shouldn't add more stuff using the rewriter unless it's clearly the
best interface. For another, doing things in the rewriter will make
optimizing things much harder - the planner will have to reconstruct
knowledge which of the joins are column store joins and such.
Why do you want to do things there?
Greetings,
Andres Freund