From 960701d143a07eb00734fe43c0b48532aa6adfe8 Mon Sep 17 00:00:00 2001 From: Eric Mc Sween <5454374+emcsween@users.noreply.github.com> Date: Thu, 2 Nov 2023 08:47:39 -0400 Subject: [PATCH] Merge pull request #15541 from overleaf/em-drop-redundant-indexes Drop redundant indexes GitOrigin-RevId: e85729b2a7320a2fa77f1ff2fa054b5438139b7d --- .../20231031164732_drop_redundant_indexes.js | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 services/web/migrations/20231031164732_drop_redundant_indexes.js diff --git a/services/web/migrations/20231031164732_drop_redundant_indexes.js b/services/web/migrations/20231031164732_drop_redundant_indexes.js new file mode 100644 index 0000000000..f3c57c42fd --- /dev/null +++ b/services/web/migrations/20231031164732_drop_redundant_indexes.js @@ -0,0 +1,39 @@ +/* eslint-disable no-unused-vars */ + +const Helpers = require('./lib/helpers') + +exports.tags = ['server-ce', 'server-pro', 'saas'] + +const DOCS_INDEXES = [ + { + key: { project_id: 1 }, + name: 'project_id_1', + }, +] + +const TAGS_INDEXES = [ + { + key: { user_id: 1 }, + name: 'user_id_1', + }, +] + +const PROJECTS_INDEXES = [ + { + key: { _id: 1, lastOpened: 1, active: 1 }, + name: '_id_1_lastOpened_1_active_1', + partialFilterExpression: { active: true }, + }, +] + +exports.migrate = async ({ db }) => { + await Helpers.dropIndexesFromCollection(db.docs, DOCS_INDEXES) + await Helpers.dropIndexesFromCollection(db.tags, TAGS_INDEXES) + await Helpers.dropIndexesFromCollection(db.projects, PROJECTS_INDEXES) +} + +exports.rollback = async ({ db }) => { + await Helpers.addIndexesToCollection(db.docs, DOCS_INDEXES) + await Helpers.addIndexesToCollection(db.tags, TAGS_INDEXES) + await Helpers.addIndexesToCollection(db.projects, PROJECTS_INDEXES) +}