Skip to Content
Course content

Once the cheapest path is chosen, the plan tree is handed to the Executor. Students will study PostgreSQL's demand-driven, pipeline execution model (the Volcano model). We will examine the mechanics of specific execution nodes (e.g., Agg, Sort, Limit) and how tuples are fetched, processed, and passed up the tree to the client.

Outside Reading
  • Whitepaper: The Volcano Optimizer Generator: Extensibility and Efficient Search (Goetz Graefe, 1993). This is mandatory reading for understanding the pull-based Next() execution pipeline.
  • GitHub Source: src/backend/executor/execMain.c. Read the ExecutorRun() and ExecutePlan() lifecycle.
  • GitHub Source: src/backend/executor/nodeSeqscan.c. Trace how the executor physically asks the buffer manager for the next tuple.
Rating
0 0

There are no comments for now.

to be the first to leave a comment.

Additional Resources
Join this Course to access resources