Skip to content

Esri JSON SerDe with Hive Date type column #101

@randallwhitman

Description

@randallwhitman
CREATE TABLE qd5(eqdate date);
insert OVERWRITE TABLE qd5

select to_date(eqdate) from qd0;

-- ok

CREATE TABLE qd3(eqdate date, shape binary)
ROW FORMAT SERDE 'com.esri.hadoop.hive.serde.EsriJsonSerDe'              
STORED AS INPUTFORMAT 'com.esri.json.hadoop.EnclosedJsonInputFormat'
OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat';

insert OVERWRITE TABLE qd3
select to_date(eqdate), st_point(longitude,latitude) from qd0;
Caused by: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing row {"eqdate":"1898-06-29T18:36:00.00,52.0,172.0,0.0,7.6,ML,0,,,,AK,","latitude":null,"longitude":null,"depth":null,"magnitude":null,"magtype":null,"mbstations":null,"gap":null,"distance":null,"rms":null,"source":null,"eventid":null}
        at org.apache.hadoop.hive.ql.exec.MapOperator.process(MapOperator.java:503)
        at org.apache.hadoop.hive.ql.exec.mr.ExecMapper.map(ExecMapper.java:176)
        ... 8 more
Caused by: java.lang.IllegalStateException: No ObjectCodec defined for the generator, can only serialize simple wrapper types (type passed java.sql.Date)
        at org.codehaus.jackson.impl.JsonGeneratorBase._writeSimpleObject(JsonGeneratorBase.java:556)
        at org.codehaus.jackson.impl.JsonGeneratorBase.writeObject(JsonGeneratorBase.java:317)
        at org.codehaus.jackson.JsonGenerator.writeObjectField(JsonGenerator.java:1090)
        at com.esri.hadoop.hive.serde.BaseJsonSerDe.generateJsonFromWritable(BaseJsonSerDe.java:319)
        at com.esri.hadoop.hive.serde.BaseJsonSerDe.generateJsonFromValue(BaseJsonSerDe.java:305)
        at com.esri.hadoop.hive.serde.BaseJsonSerDe.serialize(BaseJsonSerDe.java:245)
        jsonGen.writeObjectField(label, poi.getPrimitiveJavaObject(value));

See Esri/gis-tools-for-hadoop#45

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions