Skip to content

ESQL: prune more unneeded columns #132437

@bpintea

Description

@bpintea

Description

A query like:

FROM employees
| DISSECT first_name "%{msg}"
| EVAL salaryK = salary / 1000
| KEEP emp_no

will produce a plan like:

EsqlProject[[emp_no{f}#249]]
\_Dissect[first_name{f}#251,Parser[pattern=%{msg}, appendSeparator=, parser=org.elasticsearch.dissect.DissectParser@4187c918],[msg{r}#242]]
  \_Limit[1000[INTEGER],false]
    \_EsRelation[employees][emp_no{f}#249, first_name{f}#251, salary{f}#250]

The salaryK / EVAL is dropped, but DISSECT isn't. This is to investigate dropping more computation that's eventually discarded anyways.

Laterally: salary seems to still be loaded, might need a side issue.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions