[
https://issues.apache.org/jira/browse/HADOOP-8619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13424776#comment-13424776
]
Radim Kolar commented on HADOOP-8619:
-------------------------------------
There is difference between think and know. To make object serialization work,
all referenced objects must be deserializable, otherwise there is no way to
reconstruct object tree back. You can not deserialize object if you can no
create it. Plain and simple.
Lets take another approach: Hadoop is using findbugs, isnt it? It means that
you guys have some trust and confidence in findbugs authors. Then trust them if
they are telling you that deserialization do not works if you cant call
constructor.
> WritableComparator must implement no-arg constructor
> ----------------------------------------------------
>
> Key: HADOOP-8619
> URL: https://issues.apache.org/jira/browse/HADOOP-8619
> Project: Hadoop Common
> Issue Type: Improvement
> Components: io
> Affects Versions: 3.0.0
> Reporter: Radim Kolar
> Fix For: 0.23.0, 2.0.0-alpha, 3.0.0
>
> Attachments: writable-comparator.txt
>
>
> Because of reasons listed here:
> http://findbugs.sourceforge.net/bugDescriptions.html#SE_COMPARATOR_SHOULD_BE_SERIALIZABLE
> comparators should be serializable. To make deserialization work, it is
> required that all superclasses have no-arg constructor.
> http://findbugs.sourceforge.net/bugDescriptions.html#SE_NO_SUITABLE_CONSTRUCTOR
> Simply add no=arg constructor to WritableComparator.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira