[
https://issues.apache.org/jira/browse/HIVE-27138?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Naveen Gangam updated HIVE-27138:
---------------------------------
Priority: Blocker (was: Major)
> MapJoinOperator throws NPE when computing OuterJoin with filter expressions
> on small table
> ------------------------------------------------------------------------------------------
>
> Key: HIVE-27138
> URL: https://issues.apache.org/jira/browse/HIVE-27138
> Project: Hive
> Issue Type: Bug
> Reporter: Seonggon Namgung
> Assignee: Seonggon Namgung
> Priority: Blocker
> Labels: hive-4.0.0-must, pull-request-available
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Hive throws NPE when running mapjoin_filter_on_outerjoin.q using Tez engine.
> (I used TestMiniLlapCliDriver.)
> The NPE is thrown by CommonJoinOperator.getFilterTag(), which just retreives
> the last object from the given list.
> To the best of my knowledge, if Hive selects MapJoin to perform Join
> operation, filterTag should be computed and appended to a row before the row
> is passed to MapJoinOperator.
> In the case of MapReduce engine, this is done by HashTableSinkOperator.
> However, I cannot find any logic pareparing filterTag for small tables when
> Hive uses Tez engine.
> I think there are 2 available options:
> 1. Don't use MapJoinOperator if a small table has filter expression.
> 2. Add a new logic that computes and passes filterTag to MapJoinOperator.
> I am working on the second option and ready to discuss about it.
> It would be grateful if you could give any opinion about this issue.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)