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