hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Matt Foley (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-7328) Give more information about a missing Serializer class
Date Mon, 13 Jun 2011 23:45:47 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-7328?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13048891#comment-13048891

Matt Foley commented on HADOOP-7328:

Moving this discussion back to the Jira to decrease the number and size of emails and jira
appends :-)

It appears to me that getSerializer() should throw an exception on failure to return a usable
value, because:
* The method is only called on objects for which a serializer is expected to exist, so this
truly is an "exceptional" condition.
* The typical caller has no alternate strategy, as far as I know, so it will have to do a
check for null then throw an exception anyway.

The argument for consistency has merit, but this is all Hadoop stuff, so it is okay for us
to improve the semantics, if such it would be.  Nevertheless, I'm a "0" on this, do what you
think best.

And yes, please, any method that might return null should clearly document that fact in the

> Give more information about a missing Serializer class
> ------------------------------------------------------
>                 Key: HADOOP-7328
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7328
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: io
>    Affects Versions: 0.20.2
>            Reporter: Harsh J
>            Assignee: Harsh J
>              Labels: io, serialization
>             Fix For: 0.23.0
>         Attachments: HADOOP-7328.r1.diff, HADOOP-7328.r2.diff
> When you have a key/value class that's non Writable and you forget to attach io.serializers
for the same, an NPE is thrown by the tasks with no information on why or what's missing and
what led to it. I think a better exception can be thrown by SerializationFactory instead of
an NPE when a class is not found accepted by any of the loaded ones.

This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message