[ https://issues.apache.org/jira/browse/HIVE-3909?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phabricator updated HIVE-3909: ------------------------------ Attachment: HIVE-3909.D8013.1.patch navis requested code review of "HIVE-3909 [jira] Wrong data due to HIVE-2820". Reviewers: JIRA Consider the query: ~/hive/hive1$ more ql/src/test/queries/clientpositive/join_reorder4.q CREATE TABLE T1(key1 STRING, val1 STRING) STORED AS TEXTFILE; CREATE TABLE T2(key2 STRING, val2 STRING) STORED AS TEXTFILE; CREATE TABLE T3(key3 STRING, val3 STRING) STORED AS TEXTFILE; LOAD DATA LOCAL INPATH '../data/files/T1.txt' INTO TABLE T1; LOAD DATA LOCAL INPATH '../data/files/T2.txt' INTO TABLE T2; LOAD DATA LOCAL INPATH '../data/files/T3.txt' INTO TABLE T3; set hive.auto.convert.join=true; explain select /+ STREAMTABLE(a) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; select /+ STREAMTABLE(a) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; explain select /+ STREAMTABLE(b) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; select /+ STREAMTABLE(b) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; explain select /+ STREAMTABLE(c) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; select /+ STREAMTABLE(c) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; select /+ STREAMTABLE(b) */ a., b., c. from T1 a join T2 b on a.key1=b.key2 join T3 c on a.key1=c.key3; returns: 2 12 2 12 2 22 TEST PLAN EMPTY REVISION DETAIL https://reviews.facebook.net/D8013 AFFECTED FILES ql/src/java/org/apache/hadoop/hive/ql/exec/AbstractMapJoinOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/ConditionalTask.java ql/src/java/org/apache/hadoop/hive/ql/exec/MapJoinOperator.java ql/src/java/org/apache/hadoop/hive/ql/exec/SMBMapJoinOperator.java ql/src/java/org/apache/hadoop/hive/ql/optimizer/physical/LocalMapJoinProcFactory.java ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java ql/src/test/queries/clientpositive/join_reorder4.q ql/src/test/results/clientpositive/join_reorder4.q.out MANAGE HERALD DIFFERENTIAL RULES https://reviews.facebook.net/herald/view/differential/ WHY DID I GET THIS EMAIL? https://reviews.facebook.net/herald/transcript/19341/ To: JIRA, navis > Wrong data due to HIVE-2820 > --------------------------- > > Key: HIVE-3909 > URL: https://issues.apache.org/jira/browse/HIVE-3909 > Project: Hive > Issue Type: Bug > Reporter: Namit Jain > Assignee: Navis > Attachments: HIVE-3909.D8013.1.patch > > > Consider the query: > ~/hive/hive1$ more ql/src/test/queries/clientpositive/join_reorder4.q > CREATE TABLE T1(key1 STRING, val1 STRING) STORED AS TEXTFILE; > CREATE TABLE T2(key2 STRING, val2 STRING) STORED AS TEXTFILE; > CREATE TABLE T3(key3 STRING, val3 STRING) STORED AS TEXTFILE; > LOAD DATA LOCAL INPATH '../data/files/T1.txt' INTO TABLE T1; > LOAD DATA LOCAL INPATH '../data/files/T2.txt' INTO TABLE T2; > LOAD DATA LOCAL INPATH '../data/files/T3.txt' INTO TABLE T3; > set hive.auto.convert.join=true; > explain select /*+ STREAMTABLE(a) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > select /*+ STREAMTABLE(a) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > explain select /*+ STREAMTABLE(b) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > select /*+ STREAMTABLE(b) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > explain select /*+ STREAMTABLE(c) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > select /*+ STREAMTABLE(c) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > select /*+ STREAMTABLE(b) */ a.*, b.*, c.* from T1 a join T2 b on > a.key1=b.key2 join T3 c on a.key1=c.key3; > returns: > 2 12 2 12 2 22 -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira