Yuming Wang created HIVE-24797:
----------------------------------

             Summary: Disable validate default values when parsing Avro schemas.
                 Key: HIVE-24797
                 URL: https://issues.apache.org/jira/browse/HIVE-24797
             Project: Hive
          Issue Type: Bug
            Reporter: Yuming Wang


It will throw exceptions when upgrading Avro to 1.10.1 for this schema:
{code:json}
{
    "type": "record",
    "name": "EventData",
    "doc": "event data",
    "fields": [
        {"name": "ARRAY_WITH_DEFAULT", "type": {"type": "array", "items": 
"string"}, "default": null }
    ]
}
{code}

{noformat}
org.apache.avro.AvroTypeException: Invalid default for field USERACTIONS: null 
not a {"type":"array","items":"string"}
        at org.apache.avro.Schema.validateDefault(Schema.java:1571)
        at org.apache.avro.Schema.access$500(Schema.java:87)
        at org.apache.avro.Schema$Field.<init>(Schema.java:544)
        at org.apache.avro.Schema.parse(Schema.java:1678)
        at org.apache.avro.Schema$Parser.parse(Schema.java:1425)
        at org.apache.avro.Schema$Parser.parse(Schema.java:1396)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerdeUtils.getSchemaFor(AvroSerdeUtils.java:287)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerdeUtils.getSchemaFromFS(AvroSerdeUtils.java:170)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerdeUtils.determineSchemaOrThrowException(AvroSerdeUtils.java:139)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerDe.determineSchemaOrReturnErrorSchema(AvroSerDe.java:187)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerDe.initialize(AvroSerDe.java:107)
        at 
org.apache.hadoop.hive.serde2.avro.AvroSerDe.initialize(AvroSerDe.java:83)
        at 
org.apache.hadoop.hive.serde2.SerDeUtils.initializeSerDe(SerDeUtils.java:533)
        at 
org.apache.hadoop.hive.metastore.MetaStoreUtils.getDeserializer(MetaStoreUtils.java:493)
        at 
org.apache.hadoop.hive.ql.metadata.Partition.getDeserializer(Partition.java:225)
{noformat}





--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to