From 3279f997bb44f145581b2cc7215a06ff11e4d9b0 Mon Sep 17 00:00:00 2001 From: Brian Gough Date: Thu, 28 Aug 2025 09:42:02 +0100 Subject: [PATCH] Merge pull request #28161 from overleaf/bg-improved-index-for-lastBackedUpVersion add improved index for null search on lastBackedUpVersion GitOrigin-RevId: b938c3607b571053fe69d4a9330e8592c9f4ad02 --- ...732_optimise_lastBackedUpVersion_index.mjs | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 services/web/migrations/20250827155732_optimise_lastBackedUpVersion_index.mjs diff --git a/services/web/migrations/20250827155732_optimise_lastBackedUpVersion_index.mjs b/services/web/migrations/20250827155732_optimise_lastBackedUpVersion_index.mjs new file mode 100644 index 0000000000..b2f9961d20 --- /dev/null +++ b/services/web/migrations/20250827155732_optimise_lastBackedUpVersion_index.mjs @@ -0,0 +1,31 @@ +/* eslint-disable no-unused-vars */ + +import Helpers from './lib/helpers.mjs' + +const tags = ['saas'] + +const indexes = [ + { + key: { 'overleaf.backup.lastBackedUpVersion': 1, _id: 1 }, + name: 'overleaf.backup.id_1_lastBackedUpVersion_id_1', + partialFilterExpression: { + 'overleaf.backup.lastBackedUpVersion': { $in: [null] }, + }, + }, +] + +const migrate = async client => { + const { db } = client + await Helpers.addIndexesToCollection(db.projects, indexes) +} + +const rollback = async client => { + const { db } = client + await Helpers.dropIndexesFromCollection(db.projects, indexes) +} + +export default { + tags, + migrate, + rollback, +}