Updated mongo index for ProjectDeleter (#23138)

GitOrigin-RevId: aa26f29b8917b0d6ff836cc03f82b74066a7dcd4
This commit is contained in:
Domagoj Kriskovic
2025-01-28 14:15:11 +01:00
committed by Copybot
parent ff9ee2f5a9
commit cd48caeaa1
3 changed files with 46 additions and 2 deletions

View File

@@ -90,7 +90,7 @@ async function expireDeletedProjectsAfterDuration() {
'deleterData.deletedAt': {
$lt: new Date(moment().subtract(EXPIRE_PROJECTS_AFTER_DAYS, 'days')),
},
project: { $ne: null },
project: { $type: 'object' },
},
{ 'deleterData.deletedProjectId': 1 }
)

View File

@@ -0,0 +1,44 @@
/* 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,
}

View File

@@ -397,7 +397,7 @@ describe('ProjectDeleter', function () {
$lt: new Date(moment().subtract(90, 'days')),
},
project: {
$ne: null,
$type: 'object',
},
})
.chain('exec')