overleaf-cep/services/web/migrations/20250126195914_update_deleterData.deletedAt_index.mjs
Domagoj Kriskovic cd48caeaa1 Updated mongo index for ProjectDeleter (#23138)
GitOrigin-RevId: aa26f29b8917b0d6ff836cc03f82b74066a7dcd4
2025-01-29 09:05:36 +00:00

44 lines
969 B
JavaScript

/* eslint-disable no-unused-vars */
import Helpers from './lib/helpers.mjs'
const tags = ['server-ce', 'server-pro', 'saas']
const oldIndex = {
key: {
'deleterData.deletedAt': 1,
},
name: 'deleterData.deletedAt_1',
}
const newIndex = {
key: {
'deleterData.deletedAt': 1,
},
name: 'deleterData.deletedAt_1',
partialFilterExpression: { project: { $type: 'object' } },
}
const migrate = async client => {
const { db } = client
await Helpers.dropIndexesFromCollection(db.deletedProjects, [oldIndex])
await Helpers.addIndexesToCollection(db.deletedProjects, [newIndex])
}
const rollback = async client => {
const { db } = client
try {
await Helpers.dropIndexesFromCollection(db.deletedProjects, [newIndex])
await Helpers.addIndexesToCollection(db.deletedProjects, [oldIndex])
} catch (err) {
console.error('Something went wrong rolling back the migrations', err)
}
}
export default {
tags,
migrate,
rollback,
}