diff --git a/services/web/migrations/20231101191643_drop_unused_indexes.js b/services/web/migrations/20231101191643_drop_unused_indexes.js new file mode 100644 index 0000000000..06e5ec7048 --- /dev/null +++ b/services/web/migrations/20231101191643_drop_unused_indexes.js @@ -0,0 +1,73 @@ +const Helpers = require('./lib/helpers') + +exports.tags = ['server-ce', 'server-pro', 'saas'] + +const PROJECTS_INDEXES = [ + { + name: 'publicAccesLevel_1', + key: { publicAccesLevel: 1 }, + }, + { + name: 'name_1', + key: { name: 1 }, + }, + { + name: 'brandVariationId_1', + key: { brandVariationId: 1 }, + }, +] + +const DOC_SNAPSHOTS_INDEXES = [ + { + name: 'project_id_1', + key: { project_id: 1 }, + }, +] + +const USERS_INDEXES = [ + { + name: 'owner_ref', + key: { owner_ref: 1 }, + }, + { + name: 'has dropbox', + key: { 'dropbox.access_token.oauth_token_secret': 1 }, + }, + { + name: 'holdingAccount_1', + key: { holdingAccount: 1 }, + }, + { + name: 'subscription.freeTrialDowngraded_1', + key: { 'subscription.freeTrialDowngraded': 1 }, + }, + { + name: 'password_and_email', + key: { password: 1, email: 1 }, + }, + { + name: 'subscription.freeTrialExpiresAt_1', + key: { 'subscription.freeTrialExpiresAt': 1 }, + }, + { + name: 'auth_token_1', + key: { auth_token: 1 }, + }, +] + +exports.migrate = async client => { + const { db } = client + await Helpers.dropIndexesFromCollection(db.projects, PROJECTS_INDEXES) + await Helpers.dropIndexesFromCollection( + db.docSnapshots, + DOC_SNAPSHOTS_INDEXES + ) + await Helpers.dropIndexesFromCollection(db.users, USERS_INDEXES) +} + +exports.rollback = async client => { + const { db } = client + await Helpers.addIndexesToCollection(db.projects, PROJECTS_INDEXES) + await Helpers.addIndexesToCollection(db.docSnapshots, DOC_SNAPSHOTS_INDEXES) + await Helpers.addIndexesToCollection(db.users, USERS_INDEXES) +} diff --git a/services/web/migrations/20231101204352_drop_unused_saas_indexes.js b/services/web/migrations/20231101204352_drop_unused_saas_indexes.js new file mode 100644 index 0000000000..abeffa0bb7 --- /dev/null +++ b/services/web/migrations/20231101204352_drop_unused_saas_indexes.js @@ -0,0 +1,36 @@ +const Helpers = require('./lib/helpers') + +exports.tags = ['saas'] + +const SUBSCRIPTIONS_INDEXES = [ + { + name: 'free_trial', + key: { 'freeTrial.downgraded': 1, 'freeTrial.expiresAt': 1 }, + }, +] + +const USERS_INDEXES = [ + { + name: 'labsProgram_1', + key: { labsProgram: 1 }, + }, + { + name: 'labsProgramGalileo_1', + key: { labsProgramGalileo: 1 }, + }, +] + +exports.migrate = async client => { + const { db } = client + await Helpers.dropIndexesFromCollection( + db.subscriptions, + SUBSCRIPTIONS_INDEXES + ) + await Helpers.dropIndexesFromCollection(db.users, USERS_INDEXES) +} + +exports.rollback = async client => { + const { db } = client + await Helpers.addIndexesToCollection(db.subscriptions, SUBSCRIPTIONS_INDEXES) + await Helpers.addIndexesToCollection(db.users, USERS_INDEXES) +}