You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Yibing Shi (JIRA)" <ji...@apache.org> on 2014/05/16 13:19:10 UTC
[jira] [Created] (HIVE-7075) JsonSerde raises NullPointerException
when object key is not lower case
Yibing Shi created HIVE-7075:
--------------------------------
Summary: JsonSerde raises NullPointerException when object key is not lower case
Key: HIVE-7075
URL: https://issues.apache.org/jira/browse/HIVE-7075
Project: Hive
Issue Type: Bug
Components: Serializers/Deserializers
Affects Versions: 0.12.0
Reporter: Yibing Shi
We have noticed that the JsonSerde produces a NullPointerException if a JSON object has a key value that is not lower case. For example. Assume we have the file "one.json":
{ "empId" : 123, "name" : "John" }
{ "empId" : 456, "name" : "Jane" }
hive> CREATE TABLE emps (empId INT, name STRING)
ROW FORMAT SERDE "org.apache.hive.hcatalog.data.JsonSerDe";
hive> LOAD DATA LOCAL INPATH 'one.json' INTO TABLE emps;
hive> SELECT * FROM emps;
Failed with exception java.io.IOException:java.lang.NullPointerException
--------
Notice, it seems to work if the keys are lower case. Assume we have the file 'two.json':
{ "empid" : 123, "name" : "John" }
{ "empid" : 456, "name" : "Jane" }
hive> DROP TABLE emps;
hive> CREATE TABLE emps (empId INT, name STRING)
ROW FORMAT SERDE "org.apache.hive.hcatalog.data.JsonSerDe";
hive> LOAD DATA LOCAL INPATH 'two.json' INTO TABLE emps;
hive> SELECT * FROM emps;
OK
123 John
456 Jane
--
This message was sent by Atlassian JIRA
(v6.2#6252)