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

fix(fuzzer): Filter keys from both join sides instead of just one #12246

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

DanielHunte
Copy link

Summary:
Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Feb 3, 2025
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D69079267

Copy link

netlify bot commented Feb 3, 2025

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit d206e52
🔍 Latest deploy log https://app.netlify.com/sites/meta-velox/deploys/67a2523c6b496a00089e8cee

DanielHunte pushed a commit to DanielHunte/velox that referenced this pull request Feb 3, 2025
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D69079267

DanielHunte pushed a commit to DanielHunte/velox that referenced this pull request Feb 4, 2025
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
DanielHunte pushed a commit to DanielHunte/velox that referenced this pull request Feb 4, 2025
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D69079267

DanielHunte pushed a commit to DanielHunte/velox that referenced this pull request Feb 4, 2025
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
DanielHunte pushed a commit to DanielHunte/velox that referenced this pull request Feb 4, 2025
…cebookincubator#12246)

Summary:

Joins operators with filters on one side are not currently supported in Velox. It is expected that such a filter would be pushed down to the table scan and therefore not show up in the join operator.

The fix to support this would be disabling filter pushdown when filtering only one side of a join.

Alternatively, filters within join operators can be checked to ensure that the filter contains keys from both sides, else throw an exception. This change will require testing in production to see if Presto produces such plans.

For now, changing the join fuzzer filter creation to include keys from both sides will avoid this type of failure completely.

Differential Revision: D69079267
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants