MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

mongodb TTL não funciona


Quando você cria o índice TTL em primeiro plano (como você fez), o MongoDB começa a remover documentos expirados assim que o índice termina de compilar. Melhor para tail -f mongod.log durante a criação do índice para acompanhar o progresso. Você pode querer remover e recriar o índice se algo der errado.

Se o índice foi criado em segundo plano, o thread TTL pode começar a excluir documentos enquanto o índice está sendo criado.

O encadeamento TTL que remove documentos expirados é executado a cada 60 segundos.

Se você criou o índice na réplica que foi retirada do conjunto de réplicas e está sendo executada no modo autônomo, o índice SERÁ criado, mas os documentos NÃO serão removidos até que você reingresse (ou remova o conjunto de réplicas) da configuração. Se este for o caso, você pode obter algo semelhante a isso no 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