20190912145005_create_docHistory_indexes.js 987 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. /* eslint-disable no-unused-vars */
  2. const Helpers = require('./lib/helpers')
  3. exports.tags = ['server-ce', 'server-pro', 'saas']
  4. const indexes = [
  5. {
  6. key: {
  7. doc_id: 1,
  8. v: 1,
  9. },
  10. name: 'doc_id_1_v_1',
  11. },
  12. {
  13. key: {
  14. project_id: 1,
  15. 'meta.end_ts': 1,
  16. },
  17. name: 'project_id_1_meta.end_ts_1',
  18. },
  19. {
  20. key: {
  21. doc_id: 1,
  22. project_id: 1,
  23. },
  24. name: 'doc_id_1_project_id_1',
  25. },
  26. {
  27. key: {
  28. expiresAt: 1,
  29. },
  30. name: 'expiresAt_1',
  31. expireAfterSeconds: 0,
  32. },
  33. {
  34. key: {
  35. last_checked: 1,
  36. },
  37. name: 'last_checked_1',
  38. },
  39. ]
  40. exports.migrate = async client => {
  41. const { db } = client
  42. await Helpers.addIndexesToCollection(db.docHistory, indexes)
  43. }
  44. exports.rollback = async client => {
  45. const { db } = client
  46. try {
  47. await Helpers.dropIndexesFromCollection(db.docHistory, indexes)
  48. } catch (err) {
  49. console.error('Something went wrong rolling back the migrations', err)
  50. }
  51. }