Module executor

Module executor 

Source
Expand description

SQL Executor module for Alopex SQL.

This module provides the execution engine for SQL statements.

§Overview

The Executor takes a LogicalPlan from the Planner and executes it against the storage layer. It supports DDL, DML, and Query operations.

Query execution currently materializes intermediate results per stage; future versions may add streaming pipelines as requirements grow.

§Components

§Example

use std::sync::{Arc, RwLock};
use alopex_core::kv::memory::MemoryKV;
use alopex_sql::executor::Executor;
use alopex_sql::catalog::MemoryCatalog;
use alopex_sql::planner::LogicalPlan;

// Create storage and catalog
let store = Arc::new(MemoryKV::new());
let catalog = Arc::new(RwLock::new(MemoryCatalog::new()));

// Create executor
let mut executor = Executor::new(store, catalog);

// Execute a plan
let result = executor.execute(plan)?;

Re-exports§

pub use query::RowIterator;
pub use query::ScanIterator;
pub use query::build_streaming_pipeline;

Modules§

bulk
COPY / Bulk Load 実装。
evaluator
Expression evaluator for typed expressions.
query

Structs§

ColumnInfo
Column information for query results.
Executor
SQL statement executor.
QueryResult
Result of a SELECT query.
QueryRowIterator
Streaming query result that yields rows one at a time.
Row
Internal row representation with row_id for DML operations.

Enums§

ConstraintViolation
Constraint violation details.
EvaluationError
Expression evaluation errors.
ExecutionResult
Result of executing a SQL statement.
ExecutorError
Errors that can occur during SQL execution.

Type Aliases§

Result
Type alias for executor results.