Query Trace

Calls that take place in the plan tree creation

Actual calls will be in italics. Members of objects that are referred to using pointers will use dot (.) notation because of HTML formatting problems with the greater than sign.

Parser - C
DoQuery
OptimizeAndExecute
yyparse
pp_typechk

Optimizer - C++
ii_ConvertFromParseTree constructor
Optimizer.Optimize
o.GetBestSolution

The plan tree is now a tree of PlanNodes.

Planner
PlanNode.interpret
interpret is called recursively over every node in the tree.

Once the tree of iterators is created, with all the iterators as inputs to the top level iterator, the call to interpret will return a pointer to the top level iterator. The main() function will call get_next on the top iterator and get the next tuple. This call to get_next will cause the top level iterator to issue calls to its children.

Back to the Overview
Click here to go the Minibase Home Page