Skip to content

feat: implement replace_children for custom ExecutionPlan nodes - #669

Open
VedantMadane wants to merge 1 commit into
datafusion-contrib:mainfrom
VedantMadane:fix/issue-657
Open

feat: implement replace_children for custom ExecutionPlan nodes#669
VedantMadane wants to merge 1 commit into
datafusion-contrib:mainfrom
VedantMadane:fix/issue-657

Conversation

@VedantMadane

Copy link
Copy Markdown

Summary

feat: implement replace_children for custom ExecutionPlan nodes

Changes

  • src/coordinator/distributed.rs: replace_children -> with_new_children
  • src/execution_plans/broadcast.rs: replace_children -> with_new_children
  • src/execution_plans/children_isolator_union.rs: replace_children -> with_new_children
  • src/execution_plans/distributed_leaf.rs: replace_children -> with_new_children
  • src/execution_plans/metrics.rs: replace_children -> with_new_children
  • src/execution_plans/network_broadcast.rs: replace_children -> with_new_children
  • src/execution_plans/network_coalesce.rs: replace_children -> with_new_children
  • src/execution_plans/network_shuffle.rs: replace_children -> with_new_children
  • src/execution_plans/sampler.rs: replace_children -> with_new_children
  • src/explain_analyze.rs: replace_children -> with_new_children
  • src/test_utils/mock_exec.rs: replace_children -> with_new_children
  • src/test_utils/routing.rs: replace_children -> with_new_children
  • src/test_utils/test_work_unit_feed.rs: replace_children -> with_new_children
  • examples/custom_execution_plan.rs: replace_children
  • examples/custom_worker_url_routing.rs: replace_children
  • examples/work_unit_feed.rs: replace_children
  • tests/custom_config_extension.rs: replace_children
  • tests/custom_extension_codec.rs: replace_children
  • tests/error_propagation.rs: replace_children
  • tests/stateful_execution_plan.rs: replace_children
  • benchmarks/benches/broadcast_cache_scenarios.rs: replace_children

Fixes #657

- src/coordinator/distributed.rs: replace_children -> with_new_children
- src/execution_plans/broadcast.rs: replace_children -> with_new_children
- src/execution_plans/children_isolator_union.rs: replace_children -> with_new_children
- src/execution_plans/distributed_leaf.rs: replace_children -> with_new_children
- src/execution_plans/metrics.rs: replace_children -> with_new_children
- src/execution_plans/network_broadcast.rs: replace_children -> with_new_children
- src/execution_plans/network_coalesce.rs: replace_children -> with_new_children
- src/execution_plans/network_shuffle.rs: replace_children -> with_new_children
- src/execution_plans/sampler.rs: replace_children -> with_new_children
- src/explain_analyze.rs: replace_children -> with_new_children
- src/test_utils/mock_exec.rs: replace_children -> with_new_children
- src/test_utils/routing.rs: replace_children -> with_new_children
- src/test_utils/test_work_unit_feed.rs: replace_children -> with_new_children
- examples/custom_execution_plan.rs: replace_children
- examples/custom_worker_url_routing.rs: replace_children
- examples/work_unit_feed.rs: replace_children
- tests/custom_config_extension.rs: replace_children
- tests/custom_extension_codec.rs: replace_children
- tests/error_propagation.rs: replace_children
- tests/stateful_execution_plan.rs: replace_children
- benchmarks/benches/broadcast_cache_scenarios.rs: replace_children

Fixes datafusion-contrib#657

Signed-off-by: Vedant Madane <6527493+VedantMadane@users.noreply.github.com>
Comment on lines +179 to +186
fn replace_children(
self: Arc<Self>,
children: Vec<Arc<dyn ExecutionPlan>>,
_options: ReplaceChildrenOptions,
) -> Result<Arc<dyn ExecutionPlan>> {
// Prefer replace_children over deprecated with_new_children (#657).
self.with_new_children(children)
}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@VedantMadane I'm afraid this is not sufficient. The point of this is to stop using with_new_children, but in this PR you are still using it everywhere.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

implement replace_children for all ExecutinoPlan implementations

2 participants