[ 
https://issues.apache.org/jira/browse/YARN-3745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lavkesh Lahngir updated YARN-3745:
----------------------------------
    Attachment: YARN-3745.1.patch

Added test. 
With previous implementation the test was failing with NoSuchMethodException
{code}
testDeserializeWithDefaultConstructor(org.apache.hadoop.yarn.api.records.impl.pb.TestSerializedExceptionPBImpl)
  Time elapsed: 0.129 sec  <<< ERROR!
org.apache.hadoop.yarn.exceptions.YarnRuntimeException: 
java.lang.NoSuchMethodException: 
java.nio.channels.ClosedChannelException.<init>(java.lang.String)
        at java.lang.Class.getConstructor0(Class.java:2892)
        at java.lang.Class.getConstructor(Class.java:1723)
        at 
org.apache.hadoop.yarn.api.records.impl.pb.SerializedExceptionPBImpl.instantiateException(SerializedExceptionPBImpl.java:181)
        at 
org.apache.hadoop.yarn.api.records.impl.pb.SerializedExceptionPBImpl.deSerialize(SerializedExceptionPBImpl.java:106)
        at 
org.apache.hadoop.yarn.api.records.impl.pb.TestSerializedExceptionPBImpl.testDeserializeWithDefaultConstructor(TestSerializedExceptionPBImpl.java:72)
{code}

> SerializedException should also try to instantiate internal exception with 
> the default constructor
> --------------------------------------------------------------------------------------------------
>
>                 Key: YARN-3745
>                 URL: https://issues.apache.org/jira/browse/YARN-3745
>             Project: Hadoop YARN
>          Issue Type: Bug
>    Affects Versions: 2.6.0
>            Reporter: Lavkesh Lahngir
>            Assignee: Lavkesh Lahngir
>         Attachments: YARN-3745.1.patch, YARN-3745.patch
>
>
> While deserialising a SerializedException it tries to create internal 
> exception in instantiateException() with cn = 
> cls.getConstructor(String.class).
> if cls does not has a constructor with String parameter it throws 
> Nosuchmethodexception
> for example ClosedChannelException class.  
> We should also try to instantiate exception with default constructor so that 
> inner exception can to propagated.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to