[ 
https://issues.apache.org/jira/browse/HIVE-23593?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17147597#comment-17147597
 ] 

Ayush Saxena commented on HIVE-23593:
-------------------------------------

Hi [~kgyrtkirk], we too faced the same issue, while verifying {{Hadoop-3.3.0}} 
release on {{ARM}}.
This happens due to HIVE-22126, When {{calcite-core}} got shaded as well along 
with {{guava}}, but there guava was reallocated, but not {{calcite-core}} which 
was included later. As you said removing {{calcite-core}} from {{lib}} works 
since the only class that is able to load is from {{hive-exec}} jar, This makes 
things work here.
But if some one(client plugins/applications) is having {{calcite-core}} in its 
classpath  for other reasons, or it tends to be used later even somewhere other 
than where shaded. This issue will surface again.
A probable addition is we reallocate the {{calcite-core}} classes as well, 
which is done for gauva and others in Hive. This is something we follow in 
Hadoop too. So, as presence of {{calcite-core}} or addition later doesn't 
bother.
We tried reallocating in the pom.xml the {{calcite-core}} and that seems to 
work for us. That is just 2-3 lines change.

Let me know, your thoughts on this, if you don't have any issues, will raise a 
follow up JIRA to reallocate as well. Thanx :)

cc [~vinayakumarb] [~chinnaraol]

> Schemainit fails with NoSuchFieldError 
> ---------------------------------------
>
>                 Key: HIVE-23593
>                 URL: https://issues.apache.org/jira/browse/HIVE-23593
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Zoltan Haindrich
>            Assignee: Zoltan Haindrich
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> the issue comes from a calcite related class ; it's very interesting because 
> ql already has a shaded calcite....
> {code}
> Caused by: java.lang.NoSuchFieldError: operands
>         at 
> org.apache.hadoop.hive.ql.optimizer.calcite.translator.ExprNodeConverter.visitCall(ExprNodeConverter.java:192)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.optimizer.calcite.translator.ExprNodeConverter.visitCall(ExprNodeConverter.java:98)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at org.apache.calcite.rex.RexCall.accept(RexCall.java:191) 
> ~[calcite-core-1.21.0.jar:1.21.0]
>         at 
> org.apache.hadoop.hive.ql.optimizer.calcite.HiveRexExecutorImpl.reduce(HiveRexExecutorImpl.java:56)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.parse.type.HiveFunctionHelper.foldExpression(HiveFunctionHelper.java:544)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.parse.type.HiveFunctionHelper.createConstantObjectInspector(HiveFunctionHelper.java:452)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.parse.type.HiveFunctionHelper.createObjectInspector(HiveFunctionHelper.java:435)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.parse.type.HiveFunctionHelper.getReturnType(HiveFunctionHelper.java:124)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
>         at 
> org.apache.hadoop.hive.ql.parse.type.RexNodeExprFactory.createFuncCallExpr(RexNodeExprFactory.java:647)
>  ~[hive-exec-4.0.0-SNAPSHOT.jar:4.0.0-SNAPSHOT]
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to