Github user jerryshao commented on the pull request:

    https://github.com/apache/spark/pull/1508#issuecomment-50702546
  
    Hi TD, thanks for your review. I think the previous issue is that:
    
    ```scala
    implicit val keyCmd: Manifest[U] = 
implicitly[Manifest[AnyRef]].asInstanceOf[Manifest[U]]
    ```
    This line of code cannot actually get the correct runtime class, the 
runtime class of `keyCmd` is `Object` as 
[SPARK-2103](https://issues.apache.org/jira/browse/SPARK-2103) mentioned.
    
    The right way is like this:
    
    ```scala
    implicit val keyCmd: Manifest[U] = Manifest.classTyep(keyDecodeClass)
    ```
    
    Manifest can also do the same thing if we correctly feed it with class 
info. But I think it would be better to change Manifest to ClassTag to keep 
align with other code, so I changed to use ClassTag.
    
    I will add this to Mima exclude.
    
    Thanks a lot.
    
    
    



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to