-
Type: Improvement
-
Resolution: Duplicate
-
Priority: Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: Write Ops
-
None
Using $addToSet there is no way to find if the add changed the list. I would have though that the updatedExisting field in getLastError would reflect if a change was made or not but it doesn't seem to do that.
> db.set.insert(
{ set : ['1','2','3'], _id : "123" });
> db.set.update({_id:"123"},{"$addToSet":{ set: '4'}}); db.runCommand("getlasterror");
> db.set.update({_id:"123"},{"$addToSet":{ set: '4'}}); db.runCommand("getlasterror");
{ "err" : null, "updatedExisting" : true, "n" : 1, "ok" : 1
I'm not sure what the best option here is but it would be very useful to know.
- duplicates
-
SERVER-3409 WriteResult should indicate number of docs modified (no-ops excluded)
- Closed