pub enum PhysicalPlan {
Show 29 variants
CreateTable(CreateTablePlan),
AlterTable(AlterTablePlan),
DropTable(String),
CreateIndex(CreateIndexPlan),
DropIndex(DropIndexPlan),
Insert(InsertPlan),
Delete(DeletePlan),
Update(UpdatePlan),
Scan {
table: String,
alias: Option<String>,
filter: Option<Expr>,
},
IndexScan {
table: String,
index: String,
range: ScanRange,
},
GraphBfs {
start_alias: String,
start_expr: Expr,
start_candidates: Option<Box<PhysicalPlan>>,
steps: Vec<GraphStepPlan>,
filter: Option<Expr>,
},
VectorSearch {
table: String,
column: String,
query_expr: Expr,
k: u64,
candidates: Option<Box<PhysicalPlan>>,
},
HnswSearch {
table: String,
column: String,
query_expr: Expr,
k: u64,
candidates: Option<Box<PhysicalPlan>>,
},
Filter {
input: Box<PhysicalPlan>,
predicate: Expr,
},
Project {
input: Box<PhysicalPlan>,
columns: Vec<ProjectColumn>,
},
Distinct {
input: Box<PhysicalPlan>,
},
Join {
left: Box<PhysicalPlan>,
right: Box<PhysicalPlan>,
condition: Expr,
join_type: JoinType,
left_alias: Option<String>,
right_alias: Option<String>,
},
Sort {
input: Box<PhysicalPlan>,
keys: Vec<SortKey>,
},
Limit {
input: Box<PhysicalPlan>,
count: u64,
},
MaterializeCte {
name: String,
input: Box<PhysicalPlan>,
},
CteRef {
name: String,
},
Union {
inputs: Vec<PhysicalPlan>,
all: bool,
},
Pipeline(Vec<PhysicalPlan>),
SetMemoryLimit(SetMemoryLimitValue),
ShowMemoryLimit,
SetDiskLimit(SetDiskLimitValue),
ShowDiskLimit,
SetSyncConflictPolicy(String),
ShowSyncConflictPolicy,
}Variants§
CreateTable(CreateTablePlan)
AlterTable(AlterTablePlan)
DropTable(String)
CreateIndex(CreateIndexPlan)
DropIndex(DropIndexPlan)
Insert(InsertPlan)
Delete(DeletePlan)
Update(UpdatePlan)
Scan
IndexScan
GraphBfs
VectorSearch
HnswSearch
Filter
Project
Distinct
Fields
§
input: Box<PhysicalPlan>Join
Sort
Limit
MaterializeCte
CteRef
Union
Pipeline(Vec<PhysicalPlan>)
SetMemoryLimit(SetMemoryLimitValue)
ShowMemoryLimit
SetDiskLimit(SetDiskLimitValue)
ShowDiskLimit
SetSyncConflictPolicy(String)
ShowSyncConflictPolicy
Implementations§
Trait Implementations§
Source§impl Clone for PhysicalPlan
impl Clone for PhysicalPlan
Source§fn clone(&self) -> PhysicalPlan
fn clone(&self) -> PhysicalPlan
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for PhysicalPlan
impl RefUnwindSafe for PhysicalPlan
impl Send for PhysicalPlan
impl Sync for PhysicalPlan
impl Unpin for PhysicalPlan
impl UnsafeUnpin for PhysicalPlan
impl UnwindSafe for PhysicalPlan
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more