-
Type: Improvement
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 1.6.5
-
Component/s: None
-
None
Using $addToSet there is no way to find if the add changed the set. 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 }