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

ProjectWriteStage native C++ implementation

    • Type: Icon: Improvement Improvement
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Query Execution

      ProjectWriteStage half of this proposal, discussed in the 2024-01-26 SBE Sync meeting:

      kevin.cherkauer@mongodb.com: $project performance:

      • Observation: a large portion of $projects are either just reading or writing fields from/to documents. What if we split the SBE $project stage implementation into three stage types:
      • ProjectReadStage (native C++) – reads a set of fields (including dotted paths) from an input document into slots
      • ProjectWriteStage (native C++) – writes a set of fields (including dotted paths) from slots into an output document
      • ProjectStage (EExpressions in the VM) – everything else

            Assignee:
            backlog-query-execution [DO NOT USE] Backlog - Query Execution
            Reporter:
            kevin.cherkauer@mongodb.com Kevin Cherkauer
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: