Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I currently have a table that is updated daily (easily 20%+ rows are updated, all floats/integers) and the vacuum is kicking off and running for more than 18 hours. There are 19 million rows total.

Does this seem indicative of a problem? It slows the entire database down and it's running on a pretty powerful machine (32 cores, 128 GB RAM, SSD).

Any suggestions on how to correct/fix/debug further?

All vacuum settings are default.

share|improve this question
You may want to consider doing a manual VACUUM after the UPDATE. It'll put more load on the DB, but it should run faster as it doesn't respect autovaccum_cost_delay. So if you do your bulk update during a quiet period, you might want to vacuum the resulting dead rows then too. – Craig Ringer Mar 14 '14 at 23:23
It might also help to make sure your FILLFACTOR on the table is set to about 80 or 75. That will encourage space to be left for future updates, hopefully allowing cheaper HOT updates to occur more. – Craig Ringer Mar 14 '14 at 23:24

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.