[DISCUSSION] Clarify public ExecutionPlan transformation contracts for optimizer-added state
Open
- Dominant language
- Rust
- Stars
- 9.3k
- Forks
- 2.4k
- Avg merge
- 3d 7h
- Merged PRs (30d)
- 344
Description
So I suggest we discuss separately what extra contract you need for downstream usage, and then extend `swap_inputs()` accordingly. (and also add the above assertions to prevent similar issues)
_Originally posted by @2010YOUY01 in https://github.com/apache/datafusion/pull/23078#discussion_r3456561811_
Contributor guide
Research direction
Start by reading the discussion referenced from pull request #23078, focusing on the downstream contract needed for optimizer-added state. Define what the public transformation contract should guarantee, then assess the requested swap_inputs() extension and assertions as the completion criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100