Database maintenance on Heroku

When you get an email from Heroku that 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. 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 ps:scale worker=2 --app scihist-digicoll-production
    heroku maintenance:off --app scihist-digicoll-production

  4. Turn the Hirefire manager switch back ON.