MongoDB更新有bug吗?

时间:2014-03-14 08:25:53

标签: mongodb

当我尝试使用update()修改MongoDB文档时,我发现了一些奇怪的事情如下:

t.find()

t.insert({f1:"aaaa",f2:"bbbb"})

t.find()

{ "_id" : ObjectId("5322b875ee8d53ebb10c48c7"), "f1" : "aaaa", "f2" : "bbbb" }

t.update({f1:"dddd"},{f2:"bbb6",f1:"dddd"},true)

t.find()

{ "_id" : ObjectId("5322b875ee8d53ebb10c48c7"), "f1" : "aaaa", "f2" : "bbbb" }

{ "f2" : "bbb6", "f1" : "dddd" }

t.update({f1:"cccc"},{f2:"bbb6",f1:"cccc"},true)

E11000 duplicate key error index: local.test.$_id_  dup key: { : null }

所以,我的问题是为什么MongoDB创建一个没有_id的文档?而且,当我再次这样做时,它为什么会失败?

这是一个bug,因为在MongoDB文档中,确保每个文档都有一个唯一的_id字段吗?

0 个答案:

没有答案