stak...@cloudera.com has posted comments on this change.

Change subject: IMPALA-4101: qgen: Hive join predicates should only contains 
equality functions
......................................................................


Patch Set 6:

(1 comment)

@Taras, comments addressed, new changes have been tested.

http://gerrit.cloudera.org:8080/#/c/4419/5/tests/comparison/query_generator.py
File tests/comparison/query_generator.py:

Line 1436:         signature = 
self.profile.choose_func_signature(func_class.signatures())
> Ok, I see. This means that currency only_use_equality_join_predicates is no
I made the fix for only_use_equality_join_predicates, but I moved the check 
outside the _create_boolean_func_tree function. I think its simpler if 
_create_boolean_func_tree just operates on a given list of signatures, and the 
caller decides what signatures those should be.

I defined a list of non-equality join predicates as (GreaterThan, 
GreaterThanOrEquals, In, IsNotDistinctFrom, IsNotDistinctFromOp, LessThan, 
LessThanOrEquals, NotEquals, NotIn). So basically, the check will exclude any 
of these functions from the func tree.

I left the get_allowed_join_signatures method because Hive has additional 
restrictions in addition to only allowing equi-joins (see commit message for a 
detailed explanation).


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

Gerrit-MessageType: comment
Gerrit-Change-Id: Ibe8832a03cfa0d7ecc293ec6db6db2bcb34ab459
Gerrit-PatchSet: 6
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: stak...@cloudera.com
Gerrit-Reviewer: David Knupp <dkn...@cloudera.com>
Gerrit-Reviewer: Michael Brown <mi...@cloudera.com>
Gerrit-Reviewer: Taras Bobrovytsky <tbobrovyt...@cloudera.com>
Gerrit-Reviewer: stak...@cloudera.com
Gerrit-HasComments: Yes

Reply via email to