You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Steve Carlin (Code Review)" <ge...@cloudera.org> on 2024/10/08 21:01:18 UTC

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Steve Carlin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/21908


Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................

IMPALA-13429: Calcite planner crashing with outer join

The Calcite planner was crashing when there was an outer join
and there was a conjunct that compared two columns within the
same table. This conjunct needs to be place in "other" conjuncts
rather than "equi" conjuncts.

Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
---
M java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
A java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/RexInputRefCollector.java
2 files changed, 82 insertions(+), 1 deletion(-)



  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/08/21908/1
-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Anonymous Coward (Code Review)" <ge...@cloudera.org>.
Anonymous Coward (816) has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@103
PS1, Line 103:     List<Expr> nonEquiJoinConjuncts = new ArrayList<>();
> Done.
perfect! thanks!



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 02:29:19 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Anonymous Coward (Code Review)" <ge...@cloudera.org>.
Anonymous Coward (816) has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@103
PS1, Line 103:     List<Expr> nonEquiJoinConjuncts = new ArrayList<>();
> nonEquiJoinConjuncts --> otherJoinConjuncts
also in ImpalaHashJoinNode's constructor method



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Comment-Date: Wed, 09 Oct 2024 02:19:35 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@444
PS2, Line 444:     // left side expr may only contain inputrefs from left side.
             :     // right side expr may only contain inputrefs from right side.
> For my own understanding, let me work through some examples. Suppose we are
So I was a bit surprised too that #5 was not pushed down.  But I ran this in a later local commit and there was a case where it wasn't pushed down when it was a left join.

#6 should theoretically get pushed down too. Maybe it always does?  I haven't replicated this one. But the error I got on the backend was that it was looking up a left side SlotRef using the left tuple and the right side SlotRef using the right tuple.  So I would think #6 would be ok with this new logic.



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 14:42:13 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 4:

Patch is now rebased off of master


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 4
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Fri, 11 Oct 2024 22:15:01 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Joe McDonnell (Code Review)" <ge...@cloudera.org>.
Joe McDonnell has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 3: Code-Review+1

Thanks, this is looking good to me


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 3
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 21:12:53 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Joe McDonnell (Code Review)" <ge...@cloudera.org>.
Joe McDonnell has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

(1 comment)

This makes sense to me and it fixes the crash we were seeing. A couple small nits.

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@444
PS2, Line 444:     // left side expr may only contain inputrefs from left side.
             :     // right side expr may only contain inputrefs from right side.
> So I was a bit surprised too that #5 was not pushed down.  But I ran this i
A couple nits:
1. Let's add a sentence saying that the conjunct is in canonical form
2. I think I would rather return false for #6. (Even if this might be a purely hypothetical thing)



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 18:14:54 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@444
PS2, Line 444:     // left side expr may only contain inputrefs from left side.
             :     // right side expr may only contain inputrefs from right side.
> A couple nits:
Done



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 20:08:23 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 4: Verified+1


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 4
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Mon, 14 Oct 2024 20:05:08 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Hello Aman Sinha, Anonymous Coward (816), Joe McDonnell, Michael Smith, Impala Public Jenkins, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/21908

to look at the new patch set (#3).

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................

IMPALA-13429: Calcite planner crashing with outer join

The Calcite planner was crashing when there was an outer join
and there was a conjunct that compared two columns within the
same table. This conjunct needs to be place in "other" conjuncts
rather than "equi" conjuncts.

Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
---
M java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
A java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/RexInputRefCollector.java
2 files changed, 104 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/08/21908/3
-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 3
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/17132/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Wed, 09 Oct 2024 18:00:23 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 6: Code-Review+2


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 6
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Tue, 15 Oct 2024 20:01:14 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 6:

Whoops, pushed a branch that also had this change.

Hopefully better now?  Sorry about that.


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 6
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Tue, 15 Oct 2024 18:55:55 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................

IMPALA-13429: Calcite planner crashing with outer join

The Calcite planner was crashing when there was an outer join
and there was a conjunct that compared two columns within the
same table. This conjunct needs to be place in "other" conjuncts
rather than "equi" conjuncts.

Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Reviewed-on: http://gerrit.cloudera.org:8080/21908
Reviewed-by: Michael Smith <mi...@cloudera.com>
Tested-by: Michael Smith <mi...@cloudera.com>
---
M java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
A java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/RexInputRefCollector.java
2 files changed, 104 insertions(+), 6 deletions(-)

Approvals:
  Michael Smith: Looks good to me, approved; Verified

-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 7
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Hello Aman Sinha, Anonymous Coward (816), Joe McDonnell, Michael Smith, Impala Public Jenkins, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/21908

to look at the new patch set (#2).

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................

IMPALA-13429: Calcite planner crashing with outer join

The Calcite planner was crashing when there was an outer join
and there was a conjunct that compared two columns within the
same table. This conjunct needs to be place in "other" conjuncts
rather than "equi" conjuncts.

Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
---
M java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
A java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/util/RexInputRefCollector.java
2 files changed, 87 insertions(+), 6 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/08/21908/2
-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 4:

Build started: https://jenkins.impala.io/job/gerrit-verify-dryrun/11024/ DRY_RUN=true


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 4
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Mon, 14 Oct 2024 14:59:58 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 3:

Can we rebase this off IMPALA-13221? Or does it require that change?


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 3
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 21:21:28 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Joe McDonnell (Code Review)" <ge...@cloudera.org>.
Joe McDonnell has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@444
PS2, Line 444:     // left side expr may only contain inputrefs from left side.
             :     // right side expr may only contain inputrefs from right side.
For my own understanding, let me work through some examples. Suppose we are joining table A (left) with table B (right). Here are some conjuncts:
1. "A.id = B.id" - classic equijoin
2. "A.id = B.id + B.offset" - equijoin
3. "A.id - B.offset = B.id" - not an equijoin conjunct (first for loop triggers)
4. "A.id = B.id - A.offset" - not an equijoin conjunct (second for loop triggers)
5. "A.id = A.int_col" - not an equijoin conjunct (second for loop triggers)
6. "A.id = 2" - not an equijoin conjunct (??)

I'm a bit unclear whether this function would encounter conjuncts like #5 and #6. Those could be pushed down to the children. #3/#4 are conjuncts that could come up and would be assigned to a join (and this looks good for those).

From walking through this, would #6 return true here? It's left side is ok and it doesn't have any inputs on the right side.



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 04:16:11 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 3:

Build Successful 

https://jenkins.impala.io/job/gerrit-code-review-checks/17152/ : Initial code review checks passed. Use gerrit-verify-dryrun-external or gerrit-verify-dryrun to run full precommit tests.


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 3
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Thu, 10 Oct 2024 20:34:43 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Anonymous Coward (Code Review)" <ge...@cloudera.org>.
Anonymous Coward (816) has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@103
PS1, Line 103:     List<Expr> nonEquiJoinConjuncts = new ArrayList<>();
nonEquiJoinConjuncts --> otherJoinConjuncts
maybe better? and consistent with impala planner name



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Comment-Date: Wed, 09 Oct 2024 02:15:36 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 1:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@103
PS1, Line 103:     List<Expr> nonEquiJoinConjuncts = new ArrayList<>();
> also in ImpalaHashJoinNode's constructor method
Done.

I've noticed you have reviewed a couple of the Calcite Planner patches.  Do you have any interest in developing for it?  If so, I'm not sure if there is a public forum for Impala, but you can email me at scarlin@cloudera.com if you want to talk or have any general questions.



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Wed, 09 Oct 2024 17:36:08 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Steve Carlin (Code Review)" <ge...@cloudera.org>.
Steve Carlin has removed Youwei Wang from this change.  ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Removed reviewer Youwei Wang.
-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: deleteReviewer
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 2:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java
File java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java:

http://gerrit.cloudera.org:8080/#/c/21908/1/java/calcite-planner/src/main/java/org/apache/impala/calcite/rel/node/ImpalaJoinRel.java@103
PS1, Line 103:     List<Expr> otherJoinConjuncts = new ArrayList<>();
> Done.
https://impala.apache.org/community.html lists several options.



-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Wed, 09 Oct 2024 18:35:03 +0000
Gerrit-HasComments: Yes

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Michael Smith (Code Review)" <ge...@cloudera.org>.
Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 6: Verified+1


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 6
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Aman Sinha <am...@cloudera.com>
Gerrit-Reviewer: Anonymous Coward (816)
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Reviewer: Michael Smith <mi...@cloudera.com>
Gerrit-Reviewer: Steve Carlin <sc...@cloudera.com>
Gerrit-Comment-Date: Tue, 15 Oct 2024 20:09:22 +0000
Gerrit-HasComments: No

[Impala-ASF-CR] IMPALA-13429: Calcite planner crashing with outer join

Posted by "Impala Public Jenkins (Code Review)" <ge...@cloudera.org>.
Impala Public Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21908 )

Change subject: IMPALA-13429: Calcite planner crashing with outer join
......................................................................


Patch Set 1:

Build Failed 

https://jenkins.impala.io/job/gerrit-code-review-checks/17124/ : Initial code review checks failed. See linked job for details on the failure.


-- 
To view, visit http://gerrit.cloudera.org:8080/21908
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4ae2d257fa58f3a58079b6aa551c32ffda7d28cf
Gerrit-Change-Number: 21908
Gerrit-PatchSet: 1
Gerrit-Owner: Steve Carlin <sc...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Joe McDonnell <jo...@cloudera.com>
Gerrit-Comment-Date: Tue, 08 Oct 2024 21:28:47 +0000
Gerrit-HasComments: No