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

ExecutionListenerManager's registration of the ExecutionListenerBus should be lazy

Rank to TopRank to BottomAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsVotersWatch issueWatchersCreate sub-taskConvert to sub-taskLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.4.0
    • 3.4.0
    • SQL
    • None

    Description

      Today, ExecutionListenerManager eagerly registers an ExecutionListenerBus SparkListener when it is created, even if the SparkSession has no query execution listeners registered. In applications with many short-lived SparkSessions, this can cause a buildup of empty listeners on the shared listener bus, increasing Spark listener processing times on the driver.

      If we make the registration lazy then we avoid this driver-side listener performance overhead.

      Attachments

        Activity

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

          People

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

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment