Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

When you get an email from Heroku that reads:reads…

Your database xxx standard-0 (xxx on scihist-digicoll-production) must undergo maintenance

…. here’s how to do the maintenance at a time of your choosing:

  1. Schedule 10 minutes of downtime

  2. Put the following in a bash script:

    heroku

    Turn OFF the switch next to DYNO MANAGER at https://manager.hirefire.io/managers/2533bb0e-4eda-4f45-b8ef-3235c1e302df to prevent it from turning workers back on.

  3. heroku ps:scale worker=0 --app scihist-digicoll-production
    heroku maintenance:on --app scihist-digicoll-production
    heroku pg:maintenance:run --force --app scihist-digicoll-production
    heroku pg:wait --app scihist-digicoll-production
    heroku

    maintenance:off

    ps:scale worker=2 --app scihist-digicoll-production

  4. Scale down workers to zero

  5. Possibly disable our hirefire autoscaling to keep it from starting workers back up again

    1. https://manager.hirefire.io/managers/2533bb0e-4eda-4f45-b8ef-3235c1e302df/update

  6. At the appointed time, run the script

  7. Restore hirefire stateheroku maintenance:off --app scihist-digicoll-production

  8. Turn the Hirefire manager switch back ON.