[ 
https://issues.apache.org/jira/browse/HIVE-29197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Naresh P R updated HIVE-29197:
------------------------------
    Description: 
Hive execution fails with following exception if partition column is included 
in aggregation and filter condition has equals filter with single constant.

eg., 
{code:java}
select count(distinct pid, full_date) as CNT from test_vector where full_date 
in ('20240305') {code}
{code:java}
Caused by: java.lang.RuntimeException: Map operator initialization failed
        at 
org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:351)
        at 
org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:292)
        ... 15 more
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Constructor 
VectorUDAFCount([class 
org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc, int]) not available
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1277)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.initializeOp(VectorGroupByOperator.java:1150)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:360)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.initializeMapOperator(VectorMapOperator.java:588)
        at 
org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:314)
        ... 16 more
Caused by: java.lang.NoSuchMethodException: 
org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorUDAFCount.<init>(org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc,int)
        at java.base/java.lang.Class.getConstructor0(Class.java:3761)
        at java.base/java.lang.Class.getConstructor(Class.java:2442)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1274)
        ... 29 more{code}
Attaching repro sql file [^repro.q]

CBO considers it as 1 column and 1 constant, but execution fails.

 

  was:
Hive execution fails with following exception if partition column with single 
constant equals filter is used in aggregation.

 
{code:java}
Caused by: java.lang.RuntimeException: Map operator initialization failed
        at 
org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:351)
        at 
org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:292)
        ... 15 more
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Constructor 
VectorUDAFCount([class 
org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc, int]) not available
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1277)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.initializeOp(VectorGroupByOperator.java:1150)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:360)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
        at 
org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
        at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.initializeMapOperator(VectorMapOperator.java:588)
        at 
org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:314)
        ... 16 more
Caused by: java.lang.NoSuchMethodException: 
org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorUDAFCount.<init>(org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc,int)
        at java.base/java.lang.Class.getConstructor0(Class.java:3761)
        at java.base/java.lang.Class.getConstructor(Class.java:2442)
        at 
org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1274)
        ... 29 more{code}
Attaching repro sql file 

CBO considers it as 1 column and 1 constant, but execution fails.

 


> Vector should bailout for more than 1 groupby key
> -------------------------------------------------
>
>                 Key: HIVE-29197
>                 URL: https://issues.apache.org/jira/browse/HIVE-29197
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Naresh P R
>            Priority: Major
>
> Hive execution fails with following exception if partition column is included 
> in aggregation and filter condition has equals filter with single constant.
> eg., 
> {code:java}
> select count(distinct pid, full_date) as CNT from test_vector where full_date 
> in ('20240305') {code}
> {code:java}
> Caused by: java.lang.RuntimeException: Map operator initialization failed
>       at 
> org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:351)
>       at 
> org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:292)
>       ... 15 more
> Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Constructor 
> VectorUDAFCount([class 
> org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc, int]) not 
> available
>       at 
> org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1277)
>       at 
> org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.initializeOp(VectorGroupByOperator.java:1150)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:360)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
>       at 
> org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
>       at 
> org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:549)
>       at 
> org.apache.hadoop.hive.ql.exec.Operator.initializeChildren(Operator.java:503)
>       at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:369)
>       at 
> org.apache.hadoop.hive.ql.exec.vector.VectorMapOperator.initializeMapOperator(VectorMapOperator.java:588)
>       at 
> org.apache.hadoop.hive.ql.exec.tez.MapRecordProcessor.init(MapRecordProcessor.java:314)
>       ... 16 more
> Caused by: java.lang.NoSuchMethodException: 
> org.apache.hadoop.hive.ql.exec.vector.expressions.aggregates.VectorUDAFCount.<init>(org.apache.hadoop.hive.ql.exec.vector.VectorAggregationDesc,int)
>       at java.base/java.lang.Class.getConstructor0(Class.java:3761)
>       at java.base/java.lang.Class.getConstructor(Class.java:2442)
>       at 
> org.apache.hadoop.hive.ql.exec.vector.VectorGroupByOperator.instantiateExpression(VectorGroupByOperator.java:1274)
>       ... 29 more{code}
> Attaching repro sql file [^repro.q]
> CBO considers it as 1 column and 1 constant, but execution fails.
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to