Skip to content

Conversation

@vasia
Copy link
Contributor

@vasia vasia commented Feb 12, 2016

This PR contains the logical to physical translation for joins.

  • Joins with equality conditions only do not generate a join function.
  • Joins with equality and non-equality conditions evaluate the non-equality conditions inside a FlatJoinFunction.
  • Joins without any equality conditions e.g. in1.join.in2.where(a > b) are currently not supported. We could consider supporting those later by generating a cross function.

// FlatJoinFunction
else if (clazz == classOf[FlatJoinFunction[_,_,_]]) {
val inputTypeTerm1 = boxedTypeTermForTypeInfo(input1)
val inputTypeTerm2 = boxedTypeTermForTypeInfo(input2.get) //TODO check this
Copy link
Contributor

Choose a reason for hiding this comment

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

Why don't you call getOrElse here and throw an CodeGenException if input2 is not present? Then we can get rid of the TODO.

@vasia
Copy link
Contributor Author

vasia commented Feb 14, 2016

Thanks for the review @twalthr! I've addressed your comments.

@twalthr
Copy link
Contributor

twalthr commented Feb 15, 2016

Thanks for the changes. Looks good to merge ;-)

@vasia
Copy link
Contributor Author

vasia commented Feb 15, 2016

Great, merging this also.

asfgit pushed a commit that referenced this pull request Feb 15, 2016
@vasia vasia closed this Feb 15, 2016
@vasia vasia deleted the translateJoin branch March 7, 2016 09:34
vasia added a commit to vasia/flink that referenced this pull request Mar 16, 2016
asfgit pushed a commit that referenced this pull request Mar 18, 2016
fijolekProjects pushed a commit to fijolekProjects/flink that referenced this pull request May 1, 2016
hequn8128 pushed a commit to hequn8128/flink that referenced this pull request Jun 22, 2017
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.

4 participants