MongoDB 有一个 Document ,它的 Schema 如下
{
"_id": ObjectId // 主键
"status": String
}
数据库里面有一条数据
{
"_id": 1,
"status": "waiting"
}
现在两个线程 A,B ,线程 A 和 B 并发执行 findOneAndUpdate({"_id": "1", "status": "waiting"}, {$set: { "status": "running"}})
虽然 findOneAndUpdate 是原子操作,但是有没有可能同时查找出该文档。
{
"_id": ObjectId // 主键
"status": String
}
数据库里面有一条数据
{
"_id": 1,
"status": "waiting"
}
现在两个线程 A,B ,线程 A 和 B 并发执行 findOneAndUpdate({"_id": "1", "status": "waiting"}, {$set: { "status": "running"}})
虽然 findOneAndUpdate 是原子操作,但是有没有可能同时查找出该文档。

