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

MapStatuses shouldn't be redundantly stored in both ShuffleMapStage and MapOutputTracker

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3.0
    • Fix Version/s: 2.2.3, 2.3.0
    • Component/s: Scheduler, Shuffle
    • Labels:
      None
    • Target Version/s:

      Description

      Today the MapOutputTracker and ShuffleMapStage both maintain their own copies of MapStatuses. This creates the potential for bugs in case these two pieces of state become out of sync.

      I believe that we can improve our ability to reason about the code by storing this information only in the MapOutputTracker. This can also help to reduce driver memory consumption.

      I will provide more details in my PR, where I'll walk through the detailed arguments as to why we can take these two different metadata tracking formats and consolidate without loss of performance or correctness.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                joshrosen Josh Rosen
                Reporter:
                joshrosen Josh Rosen
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: