Правилният отговор е в)
Свойството expireAfterSeconds винаги изисква индекс на поле, което съдържа BSON дата, тъй като съдържанието на това поле за дата се използва за избиране на записи за премахване.
Когато искате актуализация на документ за нулиране на времето за живот, също актуализирайте полето за индексирана дата до текущия час.
Когато искате актуализацията да не засяга TTL, просто не актуализирайте датата.
Все пак имайте предвид, че expireAfterSeconds не гарантира незабавно изтриване на документа. Изтриванията се извършват от фоново задание, което се изпълнява всяка минута. Тази задача е с нисък приоритет и може да бъде отложена от MongoDB, когато текущото натоварване е високо. Така че, когато е важно за вашия случай на употреба времената на изтичане да се спазват точно до секунда, трябва да добавите допълнителна проверка на ниво приложение.
Тази функция е документирана тук:http://docs.mongodb.org/manual/ урок/expire-data/