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

Verify column sets match in optimizer pushdown evaluation #1279

Merged
merged 1 commit into from
Jun 25, 2024

Conversation

tlento
Copy link
Contributor

@tlento tlento commented Jun 14, 2024

The PredicatePushdownOptimizer did not have access to the node
dataset resolver necessary to do the comparison between the linkable
specs referenced in the where filter and the linkable specs available
from the DataflowPlanNode targeted by predicate pushdown.

This change makes the node dataset resolver available in the optimizer.
It uses the one from the DataflowPlanBuilder in order to take advantage
of the cached resolutions available from the build process. The optimizer
is then used to evaluate the column matches in the same manner as the
original build-time pushdown evaluation.

This change was tested by running one of the predicate pushdown rendering
tests with the --log-cli-level=DEBUG confugration set, and observing the
debug output including the same entry for "Filter specs to add:" as in
the preceding commit.

Copy link
Contributor Author

tlento commented Jun 14, 2024

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @tlento and the rest of your teammates on Graphite Graphite

Copy link

Thank you for your pull request! We could not find a changelog entry for this change. For details on how to document a change, see the contributing guide.

Copy link
Contributor

@courtneyholcomb courtneyholcomb left a comment

Choose a reason for hiding this comment

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

🚢

Copy link
Contributor Author

tlento commented Jun 25, 2024

Merge activity

  • Jun 24, 8:29 PM PDT: @tlento started a stack merge that includes this pull request via Graphite.
  • Jun 24, 8:57 PM PDT: Graphite rebased this pull request as part of a merge.
  • Jun 24, 9:01 PM PDT: @tlento merged this pull request with Graphite.

@tlento tlento force-pushed the update-dataflow-optimizer-call-mechanism branch from ae3d6ff to 8d4d7fd Compare June 25, 2024 03:52
Base automatically changed from update-dataflow-optimizer-call-mechanism to main June 25, 2024 03:56
The PredicatePushdownOptimizer did not have access to the node
dataset resolver necessary to do the comparison between the linkable
specs referenced in the where filter and the linkable specs available
from the DataflowPlanNode targeted by predicate pushdown.

This change makes the node dataset resolver available in the optimizer.
It uses the one from the DataflowPlanBuilder in order to take advantage
of the cached resolutions available from the build process. The optimizer
is then used to evaluate the column matches in the same manner as the
original build-time pushdown evaluation.

This change was tested by running one of the predicate pushdown rendering
tests with the --log-cli-level=DEBUG confugration set, and observing the
debug output including the same entry for "Filter specs to add:" as in
the preceding commit.
@tlento tlento force-pushed the evaluate-columns-for-pushdown branch from cd70c5d to 6b94906 Compare June 25, 2024 03:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants