La bonne réponse est c)
La propriété expireAfterSeconds nécessite toujours un index sur un champ qui contient une date BSON, car le contenu de ce champ de date est utilisé pour sélectionner les entrées à supprimer.
Lorsque vous souhaitez qu'une mise à jour d'un document réinitialise la durée de vie, mettez également à jour le champ de date indexé à l'heure actuelle.
Lorsque vous souhaitez qu'une mise à jour n'affecte pas le TTL, ne mettez pas à jour la date.
Cependant, gardez à l'esprit que expireAfterSeconds ne garantit pas la suppression immédiate du document. Les suppressions sont effectuées par un travail en arrière-plan qui s'exécute toutes les minutes. Ce travail est de faible priorité et peut être reporté par MongoDB lorsque la charge actuelle est élevée. Ainsi, lorsqu'il est important pour votre cas d'utilisation que les délais d'expiration soient respectés à la seconde près, vous devez ajouter une vérification supplémentaire au niveau de l'application.
Cette fonctionnalité est documentée ici :http://docs.mongodb.org/manual/ tutoriel/expire-data/