Gopal V created HIVE-21368:
------------------------------

             Summary: Vectorization: Unnecessary Decimal64 -> HiveDecimal 
conversion
                 Key: HIVE-21368
                 URL: https://issues.apache.org/jira/browse/HIVE-21368
             Project: Hive
          Issue Type: Bug
            Reporter: Gopal V


Joins projecting Decimal64 have a suspicious cast in the inner loop

{code}
ConvertDecimal64ToDecimal(col 14:decimal(7,2)/DECIMAL_64) -> 24:decimal(7,2)'
{code}

{code}
create temporary table foo(x int , y decimal(7,2));
create temporary table bar(x int , y decimal(7,2));
set hive.explain.user=false;
explain vectorization detail select sum(foo.y) from foo, bar where foo.x = 
bar.x;
{code}

{code}
'                      Map Join Operator'
'                        condition map:'
'                             Inner Join 0 to 1'
'                        keys:'
'                          0 _col0 (type: int)'
'                          1 _col0 (type: int)'
'                        Map Join Vectorization:'
'                            bigTableKeyColumnNums: [0]'
'                            bigTableRetainedColumnNums: [3]'
'                            bigTableValueColumnNums: [3]'
'                            bigTableValueExpressions: 
ConvertDecimal64ToDecimal(col 1:decimal(7,2)/DECIMAL_64) -> 3:decimal(7,2)'
'                            className: VectorMapJoinInnerBigOnlyLongOperator'
'                            native: true'
'                            nativeConditionsMet: 
hive.mapjoin.optimized.hashtable IS true, 
hive.vectorized.execution.mapjoin.native.enabled IS true, hive.execution.engine 
tez IN [tez, spark] IS true, One MapJoin Condition IS true, No nullsafe IS 
true, Small table vectorizes IS true, Fast Hash Table and No Hybrid Hash Join 
IS true'
'                            projectedOutputColumnNums: [3]'
{code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to