MCPcopy Create free account
hub / github.com/apache/datafusion / create_physical_plan

Method create_physical_plan

datafusion/core/src/physical_planner.rs:268–284  ·  view source on GitHub ↗

Create a physical plan from a logical plan

(
        &self,
        logical_plan: &LogicalPlan,
        session_state: &SessionState,
    )

Source from the content-addressed store, hash-verified

266impl PhysicalPlanner for DefaultPhysicalPlanner {
267 /// Create a physical plan from a logical plan
268 async fn create_physical_plan(
269 &self,
270 logical_plan: &LogicalPlan,
271 session_state: &SessionState,
272 ) -> Result<Arc<dyn ExecutionPlan>> {
273 if let Some(plan) = self
274 .handle_explain_or_analyze(logical_plan, session_state)
275 .await?
276 {
277 return Ok(plan);
278 }
279 let plan = self
280 .create_initial_plan(logical_plan, session_state)
281 .await?;
282
283 self.optimize_physical_plan(plan, session_state, |_, _| {})
284 }
285
286 /// Create a physical expression from a logical expression
287 /// suitable for evaluation

Callers 9

handle_analyzeMethod · 0.45
planFunction · 0.45
plan_sqlFunction · 0.45
bad_extension_plannerFunction · 0.45
plan_with_schemasFunction · 0.45

Calls 3

create_initial_planMethod · 0.80

Tested by 1