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) +}