overleaf/services/web/migrations/20231101153447_partial_last_opened_index.js
Eric Mc Sween f09f72d2da Merge pull request #15555 from overleaf/em-partial-last-opened-index
Make lastOpened index on projects partial

GitOrigin-RevId: a8c5b71450e99a578e18a95dc84eba863e4b79a1
2023-11-03 09:00:16 +00:00

26 lines
697 B
JavaScript

const Helpers = require('./lib/helpers')
exports.tags = ['server-ce', 'server-pro', 'saas']
const OLD_INDEX = {
name: 'active_1_lastOpened_1',
key: { active: 1, lastOpened: 1 },
}
const NEW_INDEX = {
name: 'lastOpened_1',
key: { lastOpened: 1 },
partialFilterExpression: { active: true },
}
exports.migrate = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.projects, [NEW_INDEX])
await Helpers.dropIndexesFromCollection(db.projects, [OLD_INDEX])
}
exports.rollback = async client => {
const { db } = client
await Helpers.addIndexesToCollection(db.projects, [OLD_INDEX])
await Helpers.dropIndexesFromCollection(db.projects, [NEW_INDEX])
}