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

Aggregate with explain >= 'executionStats' attempts to serialize a disposed pipeline

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 3.7.2
    • Affects Version/s: None
    • Component/s: Aggregation Framework
    • Labels:
      None
    • Fully Compatible
    • ALL
    • Query 2018-02-12
    • 0

      The simplest repro is running the following agg explain:

      coll.explain('executionStats').aggregate([{$project: {_id: 1}}, {$sort: {_id: 1}}]);
      

      This will trigger an access violation when the explain path attempts to serialize the pipeline after executing the plan, which was disposed by the DocumentSourceSort stage. In the case above, the projection stage releases a unique_ptr when it's disposed, however that same pointer is de-referenced in its serialize method.

            Assignee:
            nicholas.zolnierz@mongodb.com Nicholas Zolnierz
            Reporter:
            nicholas.zolnierz@mongodb.com Nicholas Zolnierz
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: