db.coll.find().snapshot()为何不起作用

发布问题 回首页

db.coll.find().snapshot()为何不起作用

★ 0 成为第一个关注这个问题的人

–session 1:
pradb>db.t1225_2.find()
{ “_id” : ObjectId(“5a40b358f34facabd6036d27″), “f1″ : “a” }
{ “_id” : ObjectId(“5a40b358f34facabd6036d28″), “f2″ : “b” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d29″), “f1″ : “d” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2a”), “f2″ : “e” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2b”), “f3″ : “f” }

pradb>db.t1225_2.find().snapshot() db.t1225_2.update({f1:’a’},{$set:{f1:’A’}})
WriteResult({ “nMatched” : 1, “nUpserted” : 0, “nModified” : 1 })

pradb>db.t1225_2.find()
{ “_id” : ObjectId(“5a40b358f34facabd6036d27″), “f1″ : “A” }
{ “_id” : ObjectId(“5a40b358f34facabd6036d28″), “f2″ : “b” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d29″), “f1″ : “d” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2a”), “f2″ : “e” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2b”), “f3″ : “f” }

–session 1:回到会话1,发现其中的f1字段返回了新值A
pradb>db.t1225_2.find().snapshot()
{ “_id” : ObjectId(“5a40b358f34facabd6036d27″), “f1″ : “A” }
{ “_id” : ObjectId(“5a40b358f34facabd6036d28″), “f2″ : “b” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d29″), “f1″ : “d” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2a”), “f2″ : “e” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2b”), “f3″ : “f” }

pradb>db.t1225_2.find()
{ “_id” : ObjectId(“5a40b358f34facabd6036d27″), “f1″ : “A” }
{ “_id” : ObjectId(“5a40b358f34facabd6036d28″), “f2″ : “b” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d29″), “f1″ : “d” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2a”), “f2″ : “e” }
{ “_id” : ObjectId(“5a40b378f34facabd6036d2b”), “f3″ : “f” }

问题是:
为何会话1中执行db.t1225_2.find().snapshot()后没有返回旧值’a’ ?

oliseh@163.com 在大约 之前添加了 Open 状态
  • 提问于
  • Answers0 个
  • 浏览 13 次
  • 最新活跃于

问题状态

  • Open

类别

1 个 参与者

db.coll.find().snapshot()为何不起作用》有12个想法

  1. 谢答,但个人认为不准确,1.mr我觉得不适合实时计算,更贴合后期数据统计需求,2.aggregate必须支持自定义函数,就好像你定义个abc(1,2)一样肯定是计算了,现在的问题是abc(1,2)这个参数我想传个字段进去,比如abc($qty,2)这样….他就不好使了….难道大家没有在aggregate中用字段进行计算的经历么?

发表评论