Mongodb db.config.locks集合中的状态1是什么意思

Mongodb db.config.locks集合中的状态1是什么意思,mongodb,Mongodb,在未成功迁移到2.4版本后的config.locks集合中,我有如下文档: { "_id" : "configUpgrade", "process" : "mongo10:27017:1369289803:1804289383", "state" : 1, "ts" : ObjectId("519db44b8436a4e1aa17b0a5"), "when" : ISODate("2013-05-23T06:16:43.075Z"), "who" : "mongo10:27017:1369289

在未成功迁移到2.4版本后的config.locks集合中,我有如下文档:

{
"_id" : "configUpgrade",
"process" : "mongo10:27017:1369289803:1804289383",
"state" : 1,
"ts" : ObjectId("519db44b8436a4e1aa17b0a5"),
"when" : ISODate("2013-05-23T06:16:43.075Z"),
"who" : "mongo10:27017:1369289803:1804289383:mongosMain:846930886",
"why" : "upgrading config database to new format v4"
}
第一州是什么意思?我知道“state”的有效值是0、1和2。它们各自的含义是什么?

说明:

如果mongos持有平衡器锁,则状态字段的值为2,这意味着平衡器处于活动状态。何时字段指示平衡器何时开始当前操作

只有通过源()我才能了解状态1的含义:

int_state;//(M) 0:未锁定| 1:争用锁| 2:锁保持


据我所知,这用于升级MongoDB 2.2和2.4版本之间的锁。

状态字段中的值表示mongos拥有锁。对于2.0及更高版本,活动锁的值为2;对于早期版本,该值为1。
src:

您以前的版本是什么?我是从2.2.3升级的。现在我的问题解决了。我发现在我的三个配置服务器中有一个配置数据库被破坏了。我想状态是:0-未运行,1-问题,2-运行,但如果有人能确认,我会很高兴。我正在运行mongo 2.6.4版,在我的config servers locks集合中看到许多状态为1的条目。你能告诉我为什么会有这些条目吗。此外,不同配置服务器中的条目不同意味着ID不同