Hi all,
I am using version 8.2.4 of the source and compiled it with
both OPTIMIZER_DEBUG and EXEC_EVALDEBUG enabled to take a look
at how quals are evaluated by the executor.
However, when I issue a query like
SELECT name FROM city WHERE population 10 LIMIT 10;
I get the following debug
Von: Tom Lane [EMAIL PROTECTED]
[EMAIL PROTECTED] writes:
WARNING: could not dump unrecognized node type: 404
ExecQual: qual is (
{
}
)
Yeah, that code is toast, we probably ought to remove it. It hasn't
worked since the changes to make the executor treat plan trees as
Hi all,
I want to pass additional weight info from the WHERE clause to the executor and
I hope someone can help me with this.
I accept clauses like the following
WHERE (foo='a'){1}
WHERE (foo='a'){1} OR (bar='b'){2}
WHERE ((foo='a'){1} OR (bar='b'){2})){42} OR (baz='c'){3}
where the {} takes
Von: Tom Lane [EMAIL PROTECTED]
Yeah, exactly. ExecInitExpr builds an ExprState tree that mirrors the
structure of the Expr tree but contains all the run-time-variable data.
This tree is what's now being passed to ExecQual.
I see, and ExecInitExpr wraps the OpExpr in an FuncExprState.
Is it
Thanks imad,
Von: imad [EMAIL PROTECTED]
It looks like you need a customized version of AExpr Node.
In the backend parser, an AExpr Node is constructed against each given
WHERE expression. You can store the weight along with the expression.
Further, don't forget to upgrade the copy functions
Von: Heikki Linnakangas [EMAIL PROTECTED]
[EMAIL PROTECTED] wrote:
To sum up, I am looking for a (decently efficient) scheme that is able
to
(1) pass arbitrary conditional expressions from WHERE to the executor in
a structure preserving way.
(2) annotate arbitrary expressions with
Thanks Heikki,
Von: Heikki Linnakangas [EMAIL PROTECTED]
I am implementing a technique that sorts a result set according to
weight annotations in the WHERE.
The query
SELECT * FROM cars
WHERE (cdChanger=1){2}
OR (mp3player=1){1}
would be sorted according to partial
Hi all,
I want to add a column, i.e. an additional TargetEntry, in an executor node
named Foo that is placed on top of the usually created plan. This node Foo will
calculate the column which is then used to sort the relation subsequently. If
desired, the column added by Foo is finally removed
Hi all,
I wonder why my ecxt_scantuple has a TupleDesc matching the subplan's tlist,
not my plan's tlist. Basically, my question is what is x in
econtext-ecxt_scantuple = x ?
I have written a new executor node Foo, with corresponding ExecFoo and make_foo
functions. I have also written a new
Thanks Tom,
that made it clear I made a mistake.
That's the way it's supposed to be --- the scantuple slot is for
scanning your subplan's output.
Browsing through the code I get the impression, that
- ecxt_scantuple is only used by Scan nodes (i.e. SeqScan, IndexScan,
SubqueryScan and
10 matches
Mail list logo