Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[8.x] Compute output of LookupJoinExec dynamically (#117763) #117777

Merged
merged 2 commits into from
Dec 2, 2024

Commits on Nov 29, 2024

  1. Compute output of LookupJoinExec dynamically (elastic#117763)

    LookupJoinExec should not assume its output but instead compute it from
    - Its input fields from the left - The fields added from the lookup
    index
    
    Currently, LookupJoinExec's output is determined when the logical plan
    is mapped to a physical one, and thereafter the output cannot be changed
    anymore. This makes it impossible to have late materialization of fields
    from the left hand side via field extractions, because we are forced to
    extract *all* fields before the LookupJoinExec, otherwise we do not
    achieve the prescribed output.
    
    Avoid that by tracking only which fields the LookupJoinExec will add
    from the lookup index instead of tracking the whole output (that was
    only correct for the logical plan).
    
    **Note:** While this PR is a refactoring for the current functionality,
    it should unblock @craigtaverner 's ongoing work related to field
    extractions and getting multiple LOOKUP JOIN queries to work correctly
    without adding hacks.
    
    (cherry picked from commit 64107e0)
    
    # Conflicts:
    #	x-pack/plugin/esql/src/main/java/org/elasticsearch/xpack/esql/planner/LocalExecutionPlanner.java
    alex-spies committed Nov 29, 2024
    Configuration menu
    Copy the full SHA
    455bc84 View commit details
    Browse the repository at this point in the history

Commits on Dec 2, 2024

  1. Configuration menu
    Copy the full SHA
    7bfa66a View commit details
    Browse the repository at this point in the history