使用Mongo 3.2
我将expireAfterSeconds设置为3天,因为我们在此集合上不需要超过3天的数据,但我可以在数据库中看到,我们仍然有一个月前的数据。配置错误。
从db.runs.getIndexes()
收集信息{
"v" : 1,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "guardian.runs"
},
{
"v" : 1,
"key" : {
"created" : 1
},
"name" : "created_1",
"ns" : "guardian.runs",
"background" : true,
"expireAfterSeconds" : 259200
}
应删除的条目:
[
{
"_id": "578c8aa25a3f72387073f2f0",
"job_id": "573f62bf0e44a2796b6e9de1",
"owner": null,
"started": "2016-07-18T07:52:02.447Z",
"ended": "2016-07-18T07:52:14.119Z",
"status": "success",
"result": {
"success": [],
"fail": [],
"warning": []
}
}
]
答案 0 :(得分:4)
您的文档没有TTL index引用的created
字段。
您需要在创建每个文档时向您的文档添加created
字段,或者更改您的TTL索引以引用started
或ended
(假设它们实际上是数据库中的日期值,而不仅仅是字符串)。