ameyc commented on issue #11364:
URL: https://github.com/apache/datafusion/issues/11364#issuecomment-2307954266

   @ozankabak @alamb taking a look at this again as we are working on 
snapshotting and UI for Denoramlized. It seems to me that the ideal place to 
add these is in the `PlanProperties` with something like
   
   `pub struct PlanProperties {
       /// See [ExecutionPlanProperties::equivalence_properties]
       pub eq_properties: EquivalenceProperties,
       /// See [ExecutionPlanProperties::output_partitioning]
       pub partitioning: Partitioning,
       /// See [ExecutionPlanProperties::execution_mode]
       pub execution_mode: ExecutionMode,
       /// See [ExecutionPlanProperties::output_ordering]
       output_ordering: Option<LexOrdering>,
       /// See [ExecutionPlanProperties::node_id]
       node_id: Option<usize>,
   }`
   
   with a method on `ExecutionPlan` to set the node_id (as this isnt available 
when the `compute_properties()` is called on the node at creation time. 
   `
       /// Sets the node_id for this `ExecutionPlan` node if it supports 
node_ids
       fn with_node_id(&mut self, _node_id: usize) {}
   }
   `
   Once the final physical plan is generated in `create_physical_plan()` after 
all the optimizer passes, we can then visit all the nodes and call 
"with_node_id" on them. Does this sound like a reasonable approach?
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org
For additional commands, e-mail: github-h...@datafusion.apache.org

Reply via email to