Description
Insert seems to always report n=0. Update and delete seem to make it match the last op. This differs from how the upserted field is handled.
> [db.foo.runCommand('update', {updates:[{q:{_id:1}, u:{an: 'object'}, upsert:true}, {q:{_id:2}, u:{an: 'object'}, upsert:true}]}), db.getLastErrorObj()]
|
[
|
{
|
"ok" : 1,
|
"nModified" : 0,
|
"n" : 2,
|
"upserted" : [
|
{
|
"index" : 0,
|
"_id" : 1
|
},
|
{
|
"index" : 1,
|
"_id" : 2
|
}
|
]
|
},
|
{
|
"connectionId" : 2,
|
"updatedExisting" : false,
|
"upserted" : 2,
|
"n" : 1,
|
"syncMillis" : 0,
|
"writtenTo" : null,
|
"err" : null,
|
"ok" : 1
|
}
|
]
|
> [db.foo.runCommand('insert', {documents:[{},{}]}), db.getLastErrorObj()]
|
[
|
{
|
"ok" : 1,
|
"n" : 2
|
},
|
{
|
"connectionId" : 2,
|
"n" : 0,
|
"syncMillis" : 0,
|
"writtenTo" : null,
|
"err" : null,
|
"ok" : 1
|
}
|
]
|
> [db.foo.runCommand('delete', {deletes:[{q:{}, limit:1},{q:{}, limit:0}]}), db.getLastErrorObj()]
|
[
|
{
|
"ok" : 1,
|
"n" : 4
|
},
|
{
|
"connectionId" : 2,
|
"n" : 3,
|
"syncMillis" : 0,
|
"writtenTo" : null,
|
"err" : null,
|
"ok" : 1
|
}
|
]
|
|
|