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

DocumentSourceMergeCursors::doDispose() should not call done() on connections in state between initLazy and initLazyFinish

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 3.5.11
    • None
    • Aggregation Framework
    • None
    • Fully Compatible
    • ALL
    • Repl 2017-07-31

    Description

      https://github.com/mongodb/mongo/blob/master/src/mongo/db/pipeline/document_source_merge_cursors.cpp#L178-L180

      This has always been illegal, but at the time it was written, dispose() would get called while in that state. However, calling code has changed such that dispose() is now called if start() throws, by way of ClientCursorPin::deleteUnderlying().

      Attachments

        Activity

          People

            mathias@mongodb.com Mathias Stearn
            mathias@mongodb.com Mathias Stearn
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: