2017-01-23 1 views
1

J'utilise Robo Mongo pour exécuter mes requêtes de base de données Mongo. J'ai une collection qui a 'requestReceivedTimestamp' colonne qui contient l'heure de la date (Exemple: 12/13/2016 23:18:56 EST). J'ai utilisé les commandes ci-dessous pour configurer l'index TTL Expiry sur cette colonne. Pour une raison quelconque, je ne vois pas les enregistrements supprimés. Est-ce que je fais quelque chose de mal ici?La définition de TTL ne supprime pas les enregistrements dans MongoDB

db.logging.createIndex({ "requestReceivedTimestamp": 1 }, { expireAfterSeconds: 2592000 }) -> Ran cette commande pour créer un index TTL sur 'requestReceivedTimestamp'

Pour activer la surveillance TTL MongoDB: db.adminCommand({setParameter:1, ttlMonitorEnabled:true}); -> Cette commande pour vous assurer que la ttlMonitor est activée. Je ne sais pas comment voir, si c'est ON ou OFF, donc j'avais exécuté cette commande pour l'activer.

Les données ressemblent à celles de mongo DB.

How the collection looks like in RoboMongo

Répondre

0

Merci Paul Rey. Après avoir inséré les données de la colonne en utilisant new Date(), j'ai pu supprimer les lignes après avoir indexé la nouvelle colonne avec la date d'expiration ttl. Utilisé la même commande - db.logging.createIndex({ "recordCreateDate": 1 }, { expireAfterSeconds: 2592000 })

Image of the inserted record

+0

Vous êtes les bienvenus, je suis heureux de vous aider :) –