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

Add the ability to specify a pipeline to an update command

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Sprint:
      Query 2019-04-08, Query 2019-04-22

      Description

      Extend the update command to take an object or an array:

      {
         update: <collection>,
         updates: [
            { q: <query>, u: <update obj OR update pipeline>, upsert: <boolean>,
              multi: <boolean>, collation: <document>, arrayFilters: <array> },
            { q: <query>, u: <update obj OR update pipeline>, upsert: <boolean>,
              multi: <boolean>, collation: <document>, arrayFilters: <array> },
            ...
         ],
         ordered: <boolean>,
         writeConcern: { <write concern> },
         bypassDocumentValidation: <boolean>
      }
      

      For this task, the only supported stages will be $addFields, $project, and $replaceRoot.

      For this task, we should ban other options such as 'collation', 'bypassDocumentValidation', 'writeConcern', 'arrayFilters'. All except 'arrayFilters' will eventually be supported, but will be tracked by separate tickets.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                9 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: