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

Reduce memory usage in ShuffleExchangeExec by selecting only the sort columns

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 2.3.2
    • 3.0.0
    • SQL
    • None

    Description

      When sorting rows, ShuffleExchangeExec uses the entire row instead of just the columns references in SortOrder to create the RangePartitioner. This causes the RangePartitioner to sample entire rows to create rangeBounds and can cause OOM issues on the driver when rows contain large fields.

      Create a projection and only use columns involved in the SortOrder for the RangePartitioner

      Attachments

        Activity

          People

            mu5358271 Shuheng Dai
            mu5358271 Shuheng Dai
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: