Could this be because of my Cost-Based Vacuum Delay settings ?
Yeah. It is supposed to slow down VACUUM so it doesn't kill your server, but it is not aware of the load. It will also slow it down if there is no load. That is its purpose after all ;)
If you want fast vacuum, issue SET vacuum_cost_delay = 0; before.
vacuum_cost_delay = 200 vacuum_cost_page_hit = 6 #vacuum_cost_page_miss = 10 # 0-10000 credits #vacuum_cost_page_dirty = 20 # 0-10000 credits vacuum_cost_limit = 100
---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster