Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-5087

reduce required memory for aggregation steps by freeing data that has been returned by $group and $sort

    • Type: Icon: Improvement Improvement
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Aggregation Framework
    • Labels:
      None

      $group and $sort must take in all their input before they can produce a result.

      At present, when the output is produced, it is simply scrolled over by the DocumentSource. We could start freeing values that have been returned by these sources as they are returned. This may be more noticeable (allow more processing) when more than one $group and/or $sort appear in the same pipeline – documents will flow from one to the next, requiring a constant amount of memory, instead of accumulating in each aggregator in the pipeline.

            Assignee:
            mathias@mongodb.com Mathias Stearn
            Reporter:
            dan@mongodb.com Daniel Pasette (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: