Expand description
Multi-Mode Query Executors
Specialized executors for each query language mode:
- Gremlin: Traverser-based execution with path state tracking
- SPARQL: Pattern matching with variable bindings
- Natural: Translation + execution with explanation
- Vector: HNSW-based similarity search with metadata filtering
- Hybrid: Combined structured + vector search with fusion strategies
Each executor converts its native AST to execution operations, leveraging the unified executor for common operations.
Modules§
- agg_
spill - Hash-aggregation spill helper — Fase 4 P4 building block.
- aggregation
- Aggregation Framework
- bitmap_
scan - Bitmap heap scan — Fase 5 P6 consumer of
TidBitmap. - cte
- CTE (Common Table Expression) executor.
- gremlin
- Gremlin Traversal Executor
- hybrid
- Hybrid Query Executor
- join
- JOIN Executor Algorithms
- natural
- Natural Language Query Executor
- parallel_
scan - Parallel scan coordinator — Fase 4 P5 building block.
- set_ops
- Set Operations Executor
- sparql
- SPARQL Query Executor
- subquery
- Subquery Executor
- vector
- Vector Query Executor
- window
- Window Functions Executor
Structs§
- Aggregation
Def - Definition of an aggregation to compute
- AvgAggregator
- AVG aggregator
- Count
Aggregator - COUNT aggregator
- Count
Distinct Aggregator - COUNT DISTINCT aggregator
- CteContext
- CTE execution context holding materialized CTE results
- CteExecutor
- CTE Executor
- CteStats
- Statistics about CTE execution
- Execute
Result - Result of executing a query with mode information
- Frame
Spec - Frame specification for window function
- Gremlin
Executor - Gremlin executor with traverser-based execution
- Group
Concat Aggregator - GROUP_CONCAT aggregator
- Hybrid
Executor - Hybrid query executor that combines structured and vector results
- InMemory
Hybrid Executor - In-memory hybrid executor for testing
- InMemory
Vector Executor - Simple in-memory vector executor for testing without full VectorStore
- Join
Stats - Statistics for choosing join strategy
- MaxAggregator
- MAX aggregator
- MinAggregator
- MIN aggregator
- Multi
Mode Executor - Multi-mode executor that routes to specialized executors
- Natural
Executor - Natural language executor with translation explanation
- Percentile
Aggregator - Percentile aggregator
- Sample
Aggregator - SAMPLE aggregator (returns first non-null value)
- SetOp
Stats - Statistics for set operations
- Sparql
Executor - SPARQL executor with variable binding semantics
- StdDev
Aggregator - Standard deviation aggregator
- Subquery
Def - A subquery definition
- Subquery
Executor - Subquery executor handles evaluation of nested queries
- SumAggregator
- SUM aggregator
- Value
Hash - Hashable wrapper for Value (for HashSet storage)
- Variance
Aggregator - Variance aggregator
- Vector
Executor - Vector query executor using HNSW index
- Window
Def - Complete window definition
- Window
Executor - Window function executor
- Window
Func - A window function to apply
- Window
Order By - Order-by specification for window
Enums§
- Compare
Op - Comparison operator for ANY/ALL
- Frame
Bound - Frame boundary specification
- Frame
Exclude - Frame exclusion option
- Frame
Type - Frame type for window functions
- Join
Condition - Join condition for filtering matches
- Join
Strategy - Strategy to use for executing the join
- Join
Type - Type of JOIN operation
- Nulls
Order - Null handling in sorting
- SetOp
Type - Type of set operation
- Sort
Direction - Sort direction
- Subquery
Cache - Cached result of a non-correlated subquery
- Subquery
Type - Type of subquery
- Window
Func Type - Type of window function
Traits§
- Aggregator
- Trait for aggregation functions
Functions§
- bind_
outer_ refs - Check if a binding satisfies correlation constraints
- choose_
strategy - Choose optimal join strategy based on statistics
- create_
aggregator - Create an aggregator by name
- detect_
correlation - Detect outer variable references in a subquery
- execute_
group_ by - 1-pass streaming GROUP BY.
- execute_
having - Execute HAVING clause (filter on aggregated results)
- execute_
join - Execute a join operation using the optimal strategy
- execute_
set_ op - Execute a set operation on two binding vectors
- hash_
join - Execute a hash join
- inline_
ctes - Inline a
QueryWithCte’s WITH clause into its inner query. Returns the rewrittenQueryExprready for dispatch. Recursive CTEs are rejected with a clear error. - merge_
join - Execute a merge join (for sorted inputs)
- nested_
loop_ join - Execute a nested loop join (O(n*m) but works with any condition)
- set_
except - EXCEPT operation (set difference)
- set_
intersect - INTERSECT operation
- set_
union - UNION operation
- split_
union_ parts - Helper to parse UNION structure for recursive CTEs