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

[FEA] Support for LeftAntiJoin in a BroacastNestedLoopJoin #2662

Closed
revans2 opened this issue Jun 9, 2021 · 1 comment
Closed

[FEA] Support for LeftAntiJoin in a BroacastNestedLoopJoin #2662

revans2 opened this issue Jun 9, 2021 · 1 comment
Labels
feature request New feature or request SQL part of the SQL/Dataframe plugin

Comments

@revans2
Copy link
Collaborator

revans2 commented Jun 9, 2021

Just for fun I tried to run the qualification tool using our plugin. It worked (no crashes), but there were large parts of it that couldn't run on the GPU.

We are missing support for LeftAntiJoin in a BroadcastNestedLoopJoin. This hopefully can work once we have AST support in the join, but might take some creativity because the expression being done for the join is.

@Expression <Or> ((sqlID#87L = sqlID#87L#18489L) OR isnull((sqlID#87L = sqlID#87L#18489L))) could run on GPU
  @Expression <EqualTo> (sqlID#87L = sqlID#87L#18489L) could run on GPU
    @Expression <AttributeReference> sqlID#87L could run on GPU
     @Expression <AttributeReference> sqlID#87L#18489L could run on GPU
   @Expression <IsNull> isnull((sqlID#87L = sqlID#87L#18489L)) could run on GPU
     @Expression <EqualTo> (sqlID#87L = sqlID#87L#18489L) could run on GPU
      @Expression <AttributeReference> sqlID#87L could run on GPU
      @Expression <AttributeReference> sqlID#87L#18489L could run on GPU

Because isNull is not a supported AST operation yet.

We need to support arrays of ints as a part of a BroadcastNestedLoopJoin (Sadly this looks like it is a part of the join and we would need to do an ArrayContains as a part of the join, which is also not a part of the AST.

@revans2 revans2 added feature request New feature or request ? - Needs Triage Need team to review and classify labels Jun 9, 2021
@sameerz sameerz added tools SQL part of the SQL/Dataframe plugin and removed ? - Needs Triage Need team to review and classify tools labels Jun 15, 2021
@sameerz sameerz changed the title [FEA] Make the qualification tool run on the GPU [FEA] Support for LeftAntiJoin in a BroacastNestedLoopJoin Jun 15, 2021
@jlowe
Copy link
Member

jlowe commented Dec 21, 2021

Support for nested loop anti joins was added in #3184. For this specific query the plugin does not yet support converting isnull to the AST, so I filed #4411 to track that.

@jlowe jlowe closed this as completed Dec 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request SQL part of the SQL/Dataframe plugin
Projects
None yet
Development

No branches or pull requests

3 participants