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

Plan summary string should not be generated for every find() operation

    • Type: Icon: Improvement Improvement
    • Resolution: Duplicate
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: Performance, Querying
    • None

      We should not be generating the plan summary string for every find operation, as it is expensive to generate.

      The plan summary string is currently used for the server log output, and is made available for introspection with db.currentOp(). We should certainly preserve the use case of exposing the plan summary in the server log output. If we do want to preserve the use case of exposing the summary string for slow queries in db.currentOp(), we could consider an approach where PlanExecutor::getNext() generates the summary string after N work calls, or after the root stage's "approximate timer" exceeds the global slowMS value.

            Assignee:
            david.storch@mongodb.com David Storch
            Reporter:
            rassi J Rassi
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: