Check for interrupt and/or yield between calls to doForceSpill in forceSpill method

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.2.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • QE 2025-05-26
    • 0
    • None
    • 3
    • TBD
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Releasing memory from a cursor is a recursive traversal of the query plan via forceSpill method.

      We should check for interrupts and yield between recursive calls to doForceSpill() methods during this traversal, similar to getNext() in agg pipeline stages.

      This allows us to yield/interrupt releaseMemory command on a query with several memory-intensive stages like SORT + GROUP.

       

      Yielding/interrupting inside a single doForceSpill() call is out of scope for this ticket

            Assignee:
            Ivan Fefer
            Reporter:
            Ivan Fefer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: