I’ve just updated from 2.2.1 to 2.7.1 only to run into a lot of problems with a bulk of depreciation messages and writeConflicts.
To quote from the changelog of version 2.6:
- update/insert/remove behavior is maintained in the Meteor way, documented in our docs, but we are now using replaceOne/updateOne/updateMany internally. This is subject to changes in the API rewrite of MongoDB without Fibers AND if you are using rawCollection directly you have to review your methods otherwise you will see deprecation messages if you are still using the old mongodb style directly.
Do I understand it correctly that the changes to update
, insert
and remove
behavior will eventually be rolled back once the MongoDb API is rewritten without Fibers?
What was the reasoning to go away from the official MongoDb syntax and come up with this distinction between one doc or many docs for the CRUD operations?
Secondly, has anyone who is also using the rawCollection
extensively (like in my project) also experienced a sudden influx of writeConflict
errors?
Additionally the check of result.nModified
is no longer working:
TypeError: Cannot read property 'nModified' of undefined