代码之家  ›  专栏  ›  技术社区  ›  fgalan

MongoDB TTL到期检查的更改周期

  •  1
  • fgalan  · 技术社区  · 8 年前

    MongoDB documentation 说:

    删除过期文档的后台任务每60秒运行一次。因此,在文档过期和后台任务运行之间的时间段内,文档可能会保留在集合中。

    有没有办法通过配置来改变周期?或者它是用mongod代码硬连接的?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Radosław Miernik    8 年前

    从今天起,这是不可能的,但已经被跟踪了 MongoDB JIRA

    db.adminCommand({setParameter: 1, ttlMonitorEnabled: false});
    db.adminCommand({setParameter: 1, ttlMonitorEnabled: true});
    

    编辑: 原来,有一个 ttlMonitorSleepSecs 旗帜。举个例子 here ,但官方文件中没有提到。

    db.adminCommand({setParameter: 1, ttlMonitorSleepSecs: 60});