javascript - MongoDB删除触发器查询

标签 javascript mongodb triggers

我是 MongoDB 的新手。

请帮我解决以下问题:

我正在使用 oplogs 为 MongoDB 操作添加触发器。在执行插入/更新操作时,我收到有关集合中添加/更新的所有字段的完整信息。

我的问题是:

当我在 MongoDB 中执行删除操作时,收到的 oplog 触发器仅包含 object_id。

有人可以指出一些示例,我可以在其中接收所有字段中的完整信息 - 对于触发器中已删除的行。

谢谢

最佳答案

您必须通过其 ObjectID 获取该文档,这在您跟踪 oplog 的当前节点上是不可能的,因为当您收到来自 的删除操作时oplog,文档不见了。我相信这意味着你有两个选择:

  1. 确保所有删除之前都有更新操作,这样您就可以在删除之前查看所需的文档字段(这当然会使删除成本更高)
  2. 使用 slave delay 运行辅助节点然后查询该节点以查找已删除的文档(直接或使用 tags )。

对于第二点,问题是延迟足够长以保证您可以获取文档,并且延迟足够短以确保您获得文档的最新版本。除非您将版本控制添加到文档中作为检查(这与选项 1 类似,您可能希望在删除之前更新版本),否则这本质上必须是一个乐观的、尽力而为的解决方案。

关于javascript - MongoDB删除触发器查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27499863/

相关文章:

python - 使用 python 在 mongodb 中使用自定义 ID 类型

mongodb - 给定一个唯一折扣代码列表,如何每个都只发送一次

linux - 如何设置svn自动导出到public_html?

javascript - Dojo win.doc 未定义

Javascript - 是否有更清晰的方式来表达 "if (a && b || !a && !b)"?

javascript - 使用复选框显示隐藏表

Mongodb 按键分组

oracle - ORA-04082:表格级触发器中不允许使用NEW或OLD引用

MySQL 触发器 'update on column' 语法

javascript - 三次线图无法正确绘制?