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

Permit empty update modifiers, treating as a no-op rather than an error

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Minor Change
    • Backport Requested:
      v4.4, v4.2, v4.0
    • Sprint:
      Query 2020-08-24
    • Case:
    • Linked BF Score:
      33

      Description

      As a few people have mentioned onĀ SERVER-12266, the change to throw errors on empty updates is highly disruptive and has kept me from updating for a long time. I'm finally in a position in which I need to move to a more recent version of MongoDB and have followed the lead of others in writing an application layer that detects empty patches and aborts the call to MongoDB in those cases. But, in doing so, I'm struck by the absurdity of the application needing to include code for that. Surely it would be much more efficient to implement such functionality within MongoDB, perhaps enabled by a run-time flag? Or perhaps a default, and disabled only via a run-time flag, since I'm sure that the people who want empty patches to work vastly outnumber those who want them to fail. I guess that this could also be a client option.

      An action triggered via an option on a patch request to a database-driven service is a very common thing. The success of the operation is seldom desired to be contingent on the presence of patch data, and there are probably millions of lines of code in the world that work around Mongo's inconsistent treatment of empty and non-empty patches. It would be great to be able to remove them.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              mindaugas.malinauskas Mindaugas Malinauskas
              Reporter:
              frank.trampe Frank Trampe
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              15 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: