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

Design a proper progress reporting & event listener API

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

Details

    • Improvement
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 1.0.0
    • 1.2.0
    • Java API, Spark Core
    • None

    Description

      This is a ticket to track progress on redesigning the SparkListener and JobProgressListener API.

      There are multiple problems with the current design, including:

      0. I'm not sure if the API is usable in Java (there are at least some enums we used in Scala and a bunch of case classes that might complicate things).
      1. The whole API is marked as DeveloperApi, because we haven't paid a lot of attention to it yet. Something as important as progress reporting deserves a more stable API.
      2. There is no easy way to connect jobs with stages. Similarly, there is no easy way to connect job groups with jobs / stages.
      3. JobProgressListener itself has no encapsulation at all. States can be arbitrarily mutated by external programs. Variable names are sort of randomly decided and inconsistent.

      We should just revisit these and propose a new, concrete design.

      Attachments

        Issue Links

        Activity

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

          People

            joshrosen Josh Rosen
            rxin Reynold Xin
            Votes:
            0 Vote for this issue
            Watchers:
            16 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Issue deployment