[ 
https://issues.apache.org/jira/browse/MRUNIT-70?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13226127#comment-13226127
 ] 

Goir Riog commented on MRUNIT-70:
---------------------------------

I've changes you test to use a ByteBuffer. Which throws the 
NullPointerException.

public void testClassWithoutNoArgConstructor() {
    Configuration conf = new Configuration();
    conf.setStrings("io.serializations", 
"org.apache.hadoop.io.serializer.JavaSerialization");
    ByteBuffer bb1 = ByteBuffer.allocate(1);
    bb1.put((byte)0xFF);
    ByteBuffer bb2 = ByteBuffer.allocate(1);
    bb2.put((byte)0xFF);
    assertEquals(bb1, Serialization.copy(bb2, conf));
  }

                
> copy(orig, conf) in Serialization shouldn't require objects to have a no-args 
> constructor, and copy(orig, copy, conf) seems to violate contract for 
> deserializer.deserialize()
> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: MRUNIT-70
>                 URL: https://issues.apache.org/jira/browse/MRUNIT-70
>             Project: MRUnit
>          Issue Type: Bug
>    Affects Versions: 0.8.0
>            Reporter: Meloss Xeloss
>            Priority: Minor
>         Attachments: MRUNIT-70-1.patch
>
>
> The copy(orig, conf) method requires objects to have a no-args constructor, 
> which is non-ideal, since it passes on to Deserializer.deserialize, which can 
> create a new object if passed in null. Additionally, the contract for 
> deserialize only _can_ fill in the object passed in, so the copy method will 
> not perform as expected if it does not.
> http://hadoop.apache.org/common/docs/current/api/org/apache/hadoop/io/serializer/Deserializer.html#deserialize%28T%29

--
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

        

Reply via email to