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

Create a PlanExecutor implementation for executing a Pipeline

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 4.7.0
    • None
    • None
    • None
    • Fully Compatible
    • Query 2020-07-13, Query 2020-07-27

    Description

      As part of adding the slot-based execution (SBE) engine, we will have multiple implementations of the PlanExecutor interface: one for the "classic" execution engine and another for SBE. This will require us to convert PlanExecutor into a clean interface that can abstract over multiple execution engines (see SERVER-48477). Therefore, it would make sense to have a third implementation of PlanExecutor which is used for executing Pipelines of DocumentSources. This will allow us to get rid of the PipelineProxyStage which currently sits between PlanExecutor and the Pipeline. Using PipelineProxyStage when SBE is enabled is particularly undesirable because it causes the runtime execution plan tree to involve both SBE PlanStages and classic PlanStages.

      Attachments

        Activity

          People

            david.storch@mongodb.com David Storch
            david.storch@mongodb.com David Storch
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: