Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-2878

Inconsistent Kryo serialisation with custom Kryo Registrator

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 1.0.0, 1.0.2
    • 1.0.3, 1.1.0
    • Spark Core
    • None
    • Linux RedHat EL 6, 4-node Spark cluster.

    Description

      The custom Kryo Registrator (a class with the org.apache.spark.serializer.KryoRegistrator trait) is not used with every Kryo instance created, and this causes inconsistent serialisation and deserialisation.

      The Kryo Registrator is sometimes not used because of a ClassNotFound exception that only occurs if it isn't the Worker thread (of an Executor) that tries to create the KryoRegistrator.

      A complete description of the problem and a project reproducing the problem can be found at https://github.com/GrahamDennis/spark-kryo-serialisation

      I have currently only tested this with Spark 1.0.0, but will try to test against 1.0.2.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            grahamdennis Graham Dennis
            grahamdennis Graham Dennis
            Votes:
            2 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment