[ https://issues.apache.org/jira/browse/ASTERIXDB-2555?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16840624#comment-16840624 ]
ASF subversion and git services commented on ASTERIXDB-2555: ------------------------------------------------------------ Commit b09ec2d99277c2fbce0e6d2961aa4ca483963edd in asterixdb's branch refs/heads/master from Ali Alsuliman [ https://gitbox.apache.org/repos/asf?p=asterixdb.git;h=b09ec2d ] [ASTERIXDB-2555][RT][COMP] Make hash join use logical comparison - user model changes: no - storage format changes: no - interface changes: no Details: This patch changes the hash join operator to use the join condition to evaluate if tuples are equal when joining. Binary physical comparators have been removed. The join condition evaluator is in TuplePairEvaluator. - extraced TuplePairEvaluatorFactory out of nested loop join class into a separate class so that it is shared among nested loop and hash join. - switched from FrameTuplePairComparator to ITuplePairComparator in in OptimizedHybridHashJoin and InMemoryHashJoin. - moved debugging code from OptimizedHybridHashJoin into a separate class, JoinUtil. - temporarily made the logical comparison of multisets use raw binary comparison instead of returning null until the logic is implemented. - made IBinaryBooleanInspector a functional interface and updated the implementations. - updated record and array test cases to reflect the new behaviour of hash join where logical comparison could produce null. Also, updated sorting, group by and distinct test cases since the input data has been modified. - added two new input files arrays1nulls.adm & arrays2nulls.adm to be used by the open dataset. previous arrays1.adm & arrays2.adm are used by the closed dataset since it cannot accept arrays with null values. Change-Id: If1834967fdd913fdc76003f09636b2450d07cd5e Reviewed-on: https://asterix-gerrit.ics.uci.edu/3387 Contrib: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Integration-Tests: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Tested-by: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Reviewed-by: Dmitry Lychagin <dmitry.lycha...@couchbase.com> Reviewed-by: Murtadha Hubail <mhub...@apache.org> > Make hash join use logical comparison > ------------------------------------- > > Key: ASTERIXDB-2555 > URL: https://issues.apache.org/jira/browse/ASTERIXDB-2555 > Project: Apache AsterixDB > Issue Type: Bug > Components: COMP - Compiler > Affects Versions: 0.9.5 > Reporter: Ali Alsuliman > Assignee: Ali Alsuliman > Priority: Major > Fix For: 0.9.5 > > > Joins should use logical comparison. Nested loop join uses EQ function which > does logical comparison. Hash join should do the same thing. -- This message was sent by Atlassian JIRA (v7.6.3#76005)