[
https://issues.apache.org/jira/browse/HIVE-7868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14117901#comment-14117901
]
Brock Noland commented on HIVE-7868:
------------------------------------
Actually AvroSerde does as I describe above. What I was really thinking here is
that we should somehow improve the error message provided to the user. We might
had a message to Serde getConfigurationErrors(). We can add a default
implementation to AbstractSerde which returns an empty list. Then we can update
the callers to check for this before using a Serde. These messages can be
disabled when we describe an avro backed table.
> AvroSerDe error handling could be improved
> ------------------------------------------
>
> Key: HIVE-7868
> URL: https://issues.apache.org/jira/browse/HIVE-7868
> Project: Hive
> Issue Type: Improvement
> Reporter: Brock Noland
> Assignee: Ferdinand Xu
>
> When an Avro schema is invalid, AvroSerDe returns an error message instead of
> throwing an exception. This is described in
> {{AvroSerdeUtils.determineSchemaOrReturnErrorSchema}}:
> {noformat}
> /**
> * Attempt to determine the schema via the usual means, but do not throw
> * an exception if we fail. Instead, signal failure via a special
> * schema. This is used because Hive calls init on the serde during
> * any call, including calls to update the serde properties, meaning
> * if the serde is in a bad state, there is no way to update that state.
> */
> {noformat}
> I believe we should find a way to provide a better experience to our users.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)