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

Avoid Deadlock in DAGScheduler

    XMLWordPrintableJSON

Details

    Description

      • The DAGScheduler could currently run into a deadlock with another thread if both access the partitions of the same RDD at the same time.
      • To make progress in getCacheLocs, we require both exclusive access to the RDD partitions and the location cache. We first lock on the location cache, and then on the RDD.
      • When accessing partitions of an RDD, the RDD first acquires exclusive access on the partitions, and then might acquire exclusive access on the location cache.
      • If thread 1 is able to acquire access on the RDD, while thread 2 holds the access to the location cache, we can run into a deadlock situation.

      Attachments

        Issue Links

          Activity

            People

              fred-db Fredrik Klauß
              fred-db Fredrik Klauß
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: