Expand description
Virtual machine that executes the instruction stream emitted by the planner. The VM owns the per-request lifecycle (admin, command, query, subscription), threads parameters through, walks the plan, dispatches each instruction to its handler, and returns the resulting columns or change deltas to the caller.
Instruction handlers live alongside the VM so the dispatch table is the single place that decides what an opcode does. Adding a new instruction means writing a handler and wiring it in - planner output never reaches storage without first being interpreted here.
Modules§
- executor
- instruction
- Instruction handlers the VM dispatches to. Split into DDL (catalog mutations: create/alter/drop, plus migrations) and DML (data manipulation: insert/update/delete, plus the read-side scans, joins, projections). Each handler owns the validation and policy interactions specific to its operation.
- services
- stack
- vm
- volcano
- Volcano-style execution: open/next/close iterator pipeline that pulls rows through scans, joins, and other relational operators a row-at-a-time (or column-batch-at-a-time). Sits alongside the vectorised path; the planner picks one based on the shape of the query and the cost model.