[ 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)