Ключ Expires в мангусте не работает, если он больше 6 дней - PullRequest
0 голосов
/ 11 апреля 2019

Если я создам новую коллекцию с моделью, показанной ниже, у индекса не будет ключа expireAfterSeconds. Я пытался использовать expireAfterSeconds вместо expires в модели, но я получаю те же результаты. Индекс содержит только ключ expireAfterSeconds, если я определю период времени меньше 7 дней в модели. Я, конечно, бросил всю коллекцию перед моими различными попытками. Однако, если я выполню db.integrationcounts.ensureIndex({ createdAt: 1 }, { expireAfterSeconds: 6048000 }), индекс будет выглядеть как положено. У меня та же проблема, если я пытаюсь установить ключ с истекшим сроком действия, который в других коллекциях превышает 7 дней. Как это можно исправить?

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

const IntegrationCountSchema = new Schema({
  integration: {
    type: Schema.Types.ObjectId,
    ref: 'integration'
  }
}, { timestamps: true });

// Everything smaller than 7 days works
IntegrationCountSchema.index({ createdAt: 1 }, { expires: '7d' });

const modelClass = mongoose.model('integrationCount', IntegrationCountSchema);

module.exports = modelClass;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...