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

All callers of PlanExecutor::getNext need to deal with error returns

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.3.2
    • Affects Version/s: 2.6.0-rc1
    • Component/s: Querying
    • Labels:
    • Fully Compatible
    • ALL
    • Query F (02/01/16), Query 10 (02/22/16)

      Some callers merely warn to the log if the Runner reports errors while others don't even check for errors. Both of these will lead to incorrect results being returned to the user rather than reporting an error. Searching the code for PlanExecutor::ADVANCED should show all loops that iterate a runner.

      Incomplete list of things that ignore errors:

      • delete (will report success even though some matching docs won't be deleted)
      • dbhash (will return the incorrect hash)
      • count
      • distinct (will return an incomplete list of distinct values, with no indication of incompleteness)
      • findAndModify (can upsert even if something already matches)
      • geoNear
      • mr
      • validate

            Assignee:
            tess.avitabile@mongodb.com Tess Avitabile (Inactive)
            Reporter:
            mathias@mongodb.com Mathias Stearn
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: