pub struct Planner { /* private fields */ }Expand description
Converts a logical plan to a physical operator tree.
Implementations§
Source§impl Planner
impl Planner
Sourcepub fn new(store: Arc<LpgStore>) -> Self
pub fn new(store: Arc<LpgStore>) -> Self
Creates a new planner with the given store.
This creates a planner without transaction context, using the current epoch from the store for visibility.
Sourcepub fn with_context(
store: Arc<LpgStore>,
tx_manager: Arc<TransactionManager>,
tx_id: Option<TxId>,
viewing_epoch: EpochId,
) -> Self
pub fn with_context( store: Arc<LpgStore>, tx_manager: Arc<TransactionManager>, tx_id: Option<TxId>, viewing_epoch: EpochId, ) -> Self
Creates a new planner with transaction context for MVCC-aware planning.
§Arguments
store- The graph storetx_manager- Transaction manager for recording reads/writestx_id- Current transaction ID (None for auto-commit)viewing_epoch- Epoch to use for version visibility
Sourcepub fn viewing_epoch(&self) -> EpochId
pub fn viewing_epoch(&self) -> EpochId
Returns the viewing epoch for this planner.
Sourcepub fn tx_manager(&self) -> Option<&Arc<TransactionManager>>
pub fn tx_manager(&self) -> Option<&Arc<TransactionManager>>
Returns a reference to the transaction manager, if available.
Sourcepub fn plan(&self, logical_plan: &LogicalPlan) -> Result<PhysicalPlan>
pub fn plan(&self, logical_plan: &LogicalPlan) -> Result<PhysicalPlan>
Sourcepub fn plan_adaptive(&self, logical_plan: &LogicalPlan) -> Result<PhysicalPlan>
pub fn plan_adaptive(&self, logical_plan: &LogicalPlan) -> Result<PhysicalPlan>
Plans a logical plan with adaptive execution support.
Creates cardinality checkpoints at key points in the plan (scans, filters, joins) that can be monitored during execution to detect estimate errors.
§Errors
Returns an error if planning fails.
Auto Trait Implementations§
impl !Freeze for Planner
impl !RefUnwindSafe for Planner
impl Send for Planner
impl !Sync for Planner
impl Unpin for Planner
impl !UnwindSafe for Planner
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