You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Navis (JIRA)" <ji...@apache.org> on 2012/08/14 09:11:37 UTC
[jira] [Created] (HIVE-3381) Result of outer join is not valid
Navis created HIVE-3381:
---------------------------
Summary: Result of outer join is not valid
Key: HIVE-3381
URL: https://issues.apache.org/jira/browse/HIVE-3381
Project: Hive
Issue Type: Bug
Components: Query Processor
Affects Versions: 0.10.0
Reporter: Navis
Assignee: Navis
Priority: Critical
Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
{code}
SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
{code}
results
{code}
NULL NULL NULL NULL NULL 66
NULL NULL NULL NULL 10050 66
NULL NULL NULL 10 10010 66
NULL NULL NULL 30 10030 88
NULL NULL NULL 35 10035 88
NULL NULL NULL 40 10040 88
NULL NULL NULL 40 10040 88
NULL NULL NULL 50 10050 88
NULL NULL NULL 50 10050 88
NULL NULL NULL 50 10050 88
NULL NULL NULL 70 10040 88
NULL NULL NULL 70 10040 88
NULL NULL NULL 70 10040 88
NULL NULL NULL 70 10040 88
NULL NULL 66 NULL NULL NULL
NULL 10050 66 NULL NULL NULL
5 10005 66 5 10005 66
15 10015 66 NULL NULL NULL
20 10020 66 20 10020 66
25 10025 88 NULL NULL NULL
30 10030 66 NULL NULL NULL
35 10035 88 NULL NULL NULL
40 10040 66 NULL NULL NULL
40 10040 66 40 10040 66
40 10040 88 NULL NULL NULL
40 10040 88 NULL NULL NULL
50 10050 66 NULL NULL NULL
50 10050 66 50 10050 66
50 10050 66 50 10050 66
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
60 10040 66 60 10040 66
60 10040 66 60 10040 66
60 10040 66 60 10040 66
60 10040 66 60 10040 66
70 10040 66 NULL NULL NULL
70 10040 66 NULL NULL NULL
70 10040 66 NULL NULL NULL
70 10040 66 NULL NULL NULL
80 10040 88 NULL NULL NULL
80 10040 88 NULL NULL NULL
80 10040 88 NULL NULL NULL
80 10040 88 NULL NULL NULL
{code}
but it seemed not right. This should be
{code}
NULL NULL NULL NULL NULL 66
NULL NULL NULL NULL 10050 66
NULL NULL NULL 10 10010 66
NULL NULL NULL 25 10025 66
NULL NULL NULL 30 10030 88
NULL NULL NULL 35 10035 88
NULL NULL NULL 40 10040 88
NULL NULL NULL 50 10050 88
NULL NULL NULL 70 10040 88
NULL NULL NULL 70 10040 88
NULL NULL NULL 80 10040 66
NULL NULL NULL 80 10040 66
NULL NULL 66 NULL NULL NULL
NULL 10050 66 NULL NULL NULL
5 10005 66 5 10005 66
15 10015 66 NULL NULL NULL
20 10020 66 20 10020 66
25 10025 88 NULL NULL NULL
30 10030 66 NULL NULL NULL
35 10035 88 NULL NULL NULL
40 10040 66 40 10040 66
40 10040 88 NULL NULL NULL
50 10050 66 50 10050 66
50 10050 66 50 10050 66
50 10050 88 NULL NULL NULL
50 10050 88 NULL NULL NULL
60 10040 66 60 10040 66
60 10040 66 60 10040 66
60 10040 66 60 10040 66
60 10040 66 60 10040 66
70 10040 66 NULL NULL NULL
70 10040 66 NULL NULL NULL
80 10040 88 NULL NULL NULL
80 10040 88 NULL NULL NULL
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phabricator updated HIVE-3381:
------------------------------
Attachment: HIVE-3381.D5565.3.patch
navis updated the revision "HIVE-3381 [jira] Result of outer join is not valid".
Reviewers: JIRA
Fixed and rebased on trunk
REVISION DETAIL
https://reviews.facebook.net/D5565
AFFECTED FILES
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/HashTableSinkOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/JoinOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/JoinUtil.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/exec/persistence/MapJoinObjectValue.java
ql/src/test/results/clientpositive/auto_join21.q.out
ql/src/test/results/clientpositive/auto_join29.q.out
ql/src/test/results/clientpositive/auto_join7.q.out
ql/src/test/results/clientpositive/auto_join_filters.q.out
ql/src/test/results/clientpositive/join21.q.out
ql/src/test/results/clientpositive/join7.q.out
ql/src/test/results/clientpositive/join_1to1.q.out
ql/src/test/results/clientpositive/join_filters.q.out
ql/src/test/results/clientpositive/join_filters_overlap.q.out
To: JIRA, navis
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Ashutosh Chauhan (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13503266#comment-13503266 ]
Ashutosh Chauhan commented on HIVE-3381:
----------------------------------------
Namit,
Since this bug silently results in wrong results, I would like to have this fixed before 0.10 is released. Patch looks good to me. Will wait for your review.
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Navis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Navis updated HIVE-3381:
------------------------
Status: Open (was: Patch Available)
I found a bug with semi join.
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13503642#comment-13503642 ]
Phabricator commented on HIVE-3381:
-----------------------------------
njain has commented on the revision "HIVE-3381 [jira] Result of outer join is not valid".
Navis, I know I am asking pretty naive questions here, but I am not able to proceed.
INLINE COMMENTS
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:363 Can you add more comments everywhere ?
I know that the old code also did not have many good comments, but it would be really
useful.
It is really difficult for me to be sure.
I reviewed some test results, and they look fine.
As you correctly said, this is hard. It would really help if you have a small example
explained in comments in the code. It would really increase the maintainability of this
code bigtime. Something like:
for Query :::
where the data is :::
the aliasFilterTags will be::
I know I am asking for too much, but this code is too risky to change.
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:396 General comment: please add lots of comments for all the private functions.
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:352 What is a skipvector ? Going to the comment below, can you explain with a query/data
example. Same for offsets.
REVISION DETAIL
https://reviews.facebook.net/D5565
To: JIRA, navis
Cc: njain
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13503772#comment-13503772 ]
Phabricator commented on HIVE-3381:
-----------------------------------
navis has commented on the revision "HIVE-3381 [jira] Result of outer join is not valid".
INLINE COMMENTS
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:352 'skipVectors' has same meaning with 'inputNulls' in original source, which makes output value for the index(alias) to be filled with null. But doing this I always confused by it's name that it means value for the index(alias) is null, which can be true or false either. I'll change it to 'inputNulls' if you prefer.
When inputNulls for some index is true, it gets metadata for the index and gets length for it and fills null for that length. 'offsets' is just pre-calculated values of such offsets.
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:363 The problem is I'm also still not sure that this patch is right.
I'll add more comments.
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java:396 ok.
REVISION DETAIL
https://reviews.facebook.net/D5565
To: JIRA, navis
Cc: njain
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13497952#comment-13497952 ]
Namit Jain commented on HIVE-3381:
----------------------------------
[~navis], can you hold off for a few days ? I also wanted to take a look at this.
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13497840#comment-13497840 ]
Carl Steinbach commented on HIVE-3381:
--------------------------------------
+1
@Navis: Can you test and commit this patch? Thanks.
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Namit Jain (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Namit Jain updated HIVE-3381:
-----------------------------
Status: Open (was: Patch Available)
comments on phabricator
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Commented] (HIVE-3381) Result of outer join is not valid
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13504355#comment-13504355 ]
Phabricator commented on HIVE-3381:
-----------------------------------
njain has commented on the revision "HIVE-3381 [jira] Result of outer join is not valid".
Navis, I am not saying that the old code is good. On the contrary, it is really difficult to follow.
There is serious lack of comments in that.
But, we have to improve that - I really appreciate that you are fixing this very serious bug,
but it would be really useful if you can add lots of comments so that it becomes much easier to
maintain/enhance in future.
REVISION DETAIL
https://reviews.facebook.net/D5565
To: JIRA, navis
Cc: njain
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Navis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Navis updated HIVE-3381:
------------------------
Status: Patch Available (was: Open)
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch, HIVE-3381.D5565.4.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Navis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Navis updated HIVE-3381:
------------------------
Status: Patch Available (was: Open)
https://reviews.facebook.net/D5565
It was hard.
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Phabricator (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Phabricator updated HIVE-3381:
------------------------------
Attachment: HIVE-3381.D5565.4.patch
navis updated the revision "HIVE-3381 [jira] Result of outer join is not valid".
Reviewers: JIRA
1. Simplified code a little
2. Added comments including example
3. Rebased on trunk & passed all tests
REVISION DETAIL
https://reviews.facebook.net/D5565
AFFECTED FILES
ql/src/java/org/apache/hadoop/hive/ql/exec/CommonJoinOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/HashTableSinkOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/JoinOperator.java
ql/src/java/org/apache/hadoop/hive/ql/exec/JoinUtil.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/exec/persistence/MapJoinObjectValue.java
ql/src/test/results/clientpositive/auto_join21.q.out
ql/src/test/results/clientpositive/auto_join29.q.out
ql/src/test/results/clientpositive/auto_join7.q.out
ql/src/test/results/clientpositive/auto_join_filters.q.out
ql/src/test/results/clientpositive/join21.q.out
ql/src/test/results/clientpositive/join7.q.out
ql/src/test/results/clientpositive/join_1to1.q.out
ql/src/test/results/clientpositive/join_filters.q.out
ql/src/test/results/clientpositive/join_filters_overlap.q.out
To: JIRA, navis
Cc: njain
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
> Attachments: HIVE-3381.D5565.3.patch, HIVE-3381.D5565.4.patch
>
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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
[jira] [Updated] (HIVE-3381) Result of outer join is not valid
Posted by "Navis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HIVE-3381?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Navis updated HIVE-3381:
------------------------
Status: Patch Available (was: Open)
> Result of outer join is not valid
> ---------------------------------
>
> Key: HIVE-3381
> URL: https://issues.apache.org/jira/browse/HIVE-3381
> Project: Hive
> Issue Type: Bug
> Components: Query Processor
> Affects Versions: 0.10.0
> Reporter: Navis
> Assignee: Navis
> Priority: Critical
>
> Outer joins, especially full outer joins or outer join with filter on 'ON clause' is not showing proper results. For example, query in test join_1to1.q
> {code}
> SELECT * FROM join_1to1_1 a full outer join join_1to1_2 b on a.key1 = b.key1 and a.value = 66 and b.value = 66 ORDER BY a.key1 ASC, a.key2 ASC, a.value ASC, b.key1 ASC, b.key2 ASC, b.value ASC;
> {code}
> results
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 40 10040 88 NULL NULL NULL
> 50 10050 66 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
> but it seemed not right. This should be
> {code}
> NULL NULL NULL NULL NULL 66
> NULL NULL NULL NULL 10050 66
> NULL NULL NULL 10 10010 66
> NULL NULL NULL 25 10025 66
> NULL NULL NULL 30 10030 88
> NULL NULL NULL 35 10035 88
> NULL NULL NULL 40 10040 88
> NULL NULL NULL 50 10050 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 70 10040 88
> NULL NULL NULL 80 10040 66
> NULL NULL NULL 80 10040 66
> NULL NULL 66 NULL NULL NULL
> NULL 10050 66 NULL NULL NULL
> 5 10005 66 5 10005 66
> 15 10015 66 NULL NULL NULL
> 20 10020 66 20 10020 66
> 25 10025 88 NULL NULL NULL
> 30 10030 66 NULL NULL NULL
> 35 10035 88 NULL NULL NULL
> 40 10040 66 40 10040 66
> 40 10040 88 NULL NULL NULL
> 50 10050 66 50 10050 66
> 50 10050 66 50 10050 66
> 50 10050 88 NULL NULL NULL
> 50 10050 88 NULL NULL NULL
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 60 10040 66 60 10040 66
> 70 10040 66 NULL NULL NULL
> 70 10040 66 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> 80 10040 88 NULL NULL NULL
> {code}
--
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