mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-29 12:01:32 +02:00
[web] switch query for hard-deleting users and add index (#22920)
* [web] switch query for hard-deleting users and add index Co-authored-by: Dr. Sasha Göbbels <sasha.goebbels@overleaf.com> * [web] fix unit tests --------- Co-authored-by: Dr. Sasha Göbbels <sasha.goebbels@overleaf.com> GitOrigin-RevId: a7fd2a590351d2e0d60c0032ca78d457ef815e41
This commit is contained in:
@@ -95,9 +95,7 @@ async function expireDeletedUsersAfterDuration() {
|
||||
'deleterData.deletedAt': {
|
||||
$lt: new Date(moment().subtract(DURATION, 'days')),
|
||||
},
|
||||
user: {
|
||||
$ne: null,
|
||||
},
|
||||
user: { $type: 'object' },
|
||||
}).exec()
|
||||
|
||||
if (deletedUsers.length === 0) {
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
import Helpers from './lib/helpers.mjs'
|
||||
|
||||
const tags = ['server-ce', 'server-pro', 'saas']
|
||||
|
||||
const index = {
|
||||
key: { 'deleterData.deletedAt': 1 },
|
||||
partialFilterExpression: { user: { $type: 'object' } },
|
||||
name: 'deleterData_deletedAt_user_1',
|
||||
}
|
||||
|
||||
const migrate = async client => {
|
||||
const { db } = client
|
||||
await Helpers.addIndexesToCollection(db.deletedUsers, [index])
|
||||
}
|
||||
|
||||
const rollback = async client => {
|
||||
const { db } = client
|
||||
try {
|
||||
await Helpers.dropIndexesFromCollection(db.deletedUsers, [index])
|
||||
} catch (err) {
|
||||
console.error('Something went wrong rolling back the migrations', err)
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
tags,
|
||||
migrate,
|
||||
rollback,
|
||||
}
|
||||
@@ -553,7 +553,7 @@ describe('UserDeleter', function () {
|
||||
$lt: new Date(moment().subtract(90, 'days')),
|
||||
},
|
||||
user: {
|
||||
$ne: null,
|
||||
$type: 'object',
|
||||
},
|
||||
})
|
||||
.chain('exec')
|
||||
|
||||
Reference in New Issue
Block a user