Github user srowen commented on the issue:

    https://github.com/apache/spark/pull/18343
  
    OK I get it. Hm, I wonder why some classes in the code extend 
`Externalizable` instead of `Serializable`? I see a comment about controlling 
serialization, but `Serializable` also lets you do that. 
    
    I imagine Kryo understands what to do with `Serializable` but not 
`Externalizable`, because i see most classes the implement the latter also 
implement `KryoSerializable`.
    
    That seems like the right fix?
    
    Because this seems to just cause default serialization to take over, and 
that's not desirable, apparently.
    
    If so then we might have a similar problem with `CompressedMapStatus`, 
`DirectTaskResult`, `LongHashedRelation`, `StorageLevel`, `UpdateBlockInfo`, 
`BlockManagerId`. It may not make a difference there, or I might misunderstand.


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to