[
https://issues.apache.org/jira/browse/HIVE-13708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15282227#comment-15282227
]
Hari Sankar Sivarama Subramaniyan commented on HIVE-13708:
----------------------------------------------------------
Couple of points :
1. The original document says :
CREATE TABLE my_table(a string, b string, ...)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde'
I believe this supports strictly string columns and not anything else(not even
variants like varchar).
Please correct me if this is wrong.
2. The description for this jira says:
CREATE EXTERNAL TABLE test (totalprice DECIMAL(38,10))
ROW FORMAT SERDE 'com.bizo.hive.serde.csv.CSVSerde' with
There is not much we can do for 'com.bizo.hive.serde.csv.CSVSerde' in Hive. I
will upload a patch that will fix for
'org.apache.hadoop.hive.serde2.OpenCSVSerde'.
Thanks
Hari
> Create table should verify datatypes supported by the serde
> -----------------------------------------------------------
>
> Key: HIVE-13708
> URL: https://issues.apache.org/jira/browse/HIVE-13708
> Project: Hive
> Issue Type: Bug
> Components: Query Planning
> Reporter: Thejas M Nair
> Assignee: Hari Sankar Sivarama Subramaniyan
> Priority: Critical
>
> As [~Goldshuv] mentioned in HIVE-7777.
> Create table with serde such as OpenCSVSerde allows for creation of table
> with columns of arbitrary types. But 'describe table' would still return
> string datatypes, and so does selects on the table.
> This is misleading and would result in users not getting intended results.
> The create table ideally should disallow the creation of such tables with
> unsupported types.
> Example posted by [~Goldshuv] in HIVE-7777 -
> {noformat}
> CREATE EXTERNAL TABLE test (totalprice DECIMAL(38,10))
> ROW FORMAT SERDE 'com.bizo.hive.serde.csv.CSVSerde' with
> serdeproperties ("separatorChar" = ",","quoteChar"= "'","escapeChar"= "\\")
> STORED AS TEXTFILE
> LOCATION '<some location>'
> tblproperties ("skip.header.line.count"="1");
> {noformat}
> Now consider this sql:
> hive> select min(totalprice) from test;
> in this case given my data, the result should have been 874.89, but the
> actual result became 100001.57 (as it is first according to byte ordering of
> a string type). this is a wrong result.
> hive> desc extended test;
> OK
> o_totalprice string from deserializer
> ...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)