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

Revisit representation of PlanStage to QuerySolutionNode mapping

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Query Optimization

      CBR maps PlanStageKey (typedef'ed to PlanStage*) to QuerySolutionNode*. It also added PlanStageKey as a member of PlanStageStats. This allows explain to get the corresponding QuerySolutionNode* for a PlanStageStats node without dereferencing a PlanStage* which may be freed memory.

      We should revisit the idea of using the planNodeId as the identifier in this map. We didn't do this because it would require making planNodeId unique across plans. When I attempted to do this, it results in 200+ unique failures. I suspect some of them use the same helper which we could fix by normalizing explain output, but it was too much work to do initially. This ticket is to revisit this task.

            Assignee:
            Unassigned Unassigned
            Reporter:
            ben.shteinfeld@mongodb.com Ben Shteinfeld
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: