You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Shubham Chaurasia (JIRA)" <ji...@apache.org> on 2019/04/22 12:21:00 UTC
[jira] [Created] (HIVE-21641) Llap external client returns decimal
columns in different precision/scale as compared to beeline
Shubham Chaurasia created HIVE-21641:
----------------------------------------
Summary: Llap external client returns decimal columns in different precision/scale as compared to beeline
Key: HIVE-21641
URL: https://issues.apache.org/jira/browse/HIVE-21641
Project: Hive
Issue Type: Bug
Components: llap
Reporter: Shubham Chaurasia
Assignee: Shubham Chaurasia
Llap external client gives different precision/scale as compared to when the query is executed beeline. Consider the following results:
Query:
{code}
select avg(ss_ext_sales_price) my_avg from store_sales;
{code}
Result from Beeline
{code}
+----------------------------+
| my_avg |
+----------------------------+
| 37.8923531030581611189434 |
+----------------------------+
{code}
Result from Llap external client
{code}
+---------+
| my_avg|
+---------+
|37.892353|
+---------+
{code}
This is due to Driver(beeline path) calls [analyzeInternal()|https://github.com/apache/hive/blob/rel/release-3.1.1/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java#L328] for getting result set schema which initializes [resultSchema|https://github.com/apache/hive/blob/rel/release-3.1.1/ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java#L333] after some more transformations as compared to llap-ext-client which calls [genLogicalPlan()|https://github.com/apache/hive/blob/master/ql/src/java/org/apache/hadoop/hive/ql/parse/ParseUtils.java#L561]
Replacing {{genLogicalPlan()}} by {{analyze()}} resolves this.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)