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

externalAPI payload inner pipeline

    • Type: Icon: Improvement Improvement
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Atlas Streams
    • Fully Compatible
    • Sprint 61, Sprint 62

      Add support for custom inner pipeline/expressions for payload.

      This should use the Pipeline:parse APIs. And only support the projectaddFields, and replaceRoot operators.

      example starting point: 
      auto pipeline = Pipeline::parse(... user's payload pipeline ... )
      .. something to feed the pipeline the input documents from the StreamDataMsg .. we might already have some utilities for this ..
      Document result = pipeline.getNext()
      .. assert only one result is returned ..
       

      In the planner call: 

      I think you can just call Pipeline::parse , then validate the resulting DocumentSource instances are for $project, $addFields, or $replaceRoot.
       

            Assignee:
            nathan.frank@mongodb.com Nathan Frank
            Reporter:
            nathan.frank@mongodb.com Nathan Frank
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: