【发布时间】:2011-03-30 15:42:28
【问题描述】:
我当前的 rails 应用程序由 mongoid/mongo 支持。在每次测试之间我想清除数据库。为此我跑了
::Mongoid.database.collections.select { |c| c.name !~ /^system/ }.each { |c| c.remove() }
问题是删除集合似乎在后台运行。有时会开始下一个测试,插入一个文档,然后通过删除操作将其清除。有什么方法可以阻止收集删除?
我知道有一个 $atomic 选项,查看了 mongo/collection 的源代码后,我看不到任何传递该选项的方法。我怎样才能阻止收集删除?
【问题讨论】: