sql >> Databáze >  >> NoSQL >> MongoDB

mongodb TTL nefunguje

Když vytvoříte index TTL v popředí (stejně jako vy), MongoDB začne odstraňovat dokumenty, jejichž platnost vypršela, jakmile index dokončí vytváření. Nejlepší je tail -f mongod.log během vytváření indexu sledovat průběh. Pokud se něco pokazilo, možná budete chtít index odstranit a znovu vytvořit.

Pokud byl index vytvořen na pozadí, vlákno TTL může začít mazat dokumenty, zatímco se index vytváří.

Vlákno TTL, které odstraňuje dokumenty s prošlou platností, se spouští každých 60 sekund.

Pokud jste vytvořili index na replice, která byla vyjmuta ze sady replik a běží v samostatném režimu, index se vytvoří, ale dokumenty NEBUDOU odstraněny, dokud se znovu nepřipojíte (nebo neodstraníte sadu replik) konfigurace. Pokud je to váš případ, můžete získat něco podobného v mongod.log

** WARNING: mongod started without --replSet yet 1 documents are ** present in local.system.replset ** Restart with --replSet unless you are doing maintenance and no other ** clients are connected. ** The TTL collection monitor will not start because of this. ** For more info see http://dochub.mongodb.org/core/ttlcollections



  1. Jak zvládnout dělení nulou v agregačním rámci MongoDB

  2. jak zabránit přihlášení na konzoli při připojení k mongodb z javy?

  3. Agregační dotaz MongoDB pomocí ovladače PHP

  4. MongoDB C# Driver a server generované ObjectId