I kicked off a manual vacuum on a 19TB table we have been having problems with 18 days ago.

Since then I have discovered that the auto vacuum for this also has triggered and is on wait_event = relation

I presume that they conflict with each other and if so would it be advisable to kill the auto vacuum or the manual vacuum? I was going to kill the auto vacuum but thought it best to post here...as presumably the manual vacuum has made more headway over 18 days


  • What version of PostgreSQL are you running? Are you monitoring the VACUUM to see what it is doing and if it is making progress? What are the various vacuuming-related parameters set to?
    – jjanes
    Commented Jan 26, 2023 at 2:10

1 Answer 1


There can only be a single VACUUM running on a table at any given time. If you start two, the second will be blocked until the first is done. You can safely kill the autovacuum process that is waiting for the lock. On the other hand, if you kill the process, it will come back withing the minute, so you might as well let it hang there.

  • While killing it won't do any harm, it also won't do any good. A new anti-wraparound autovac will launch almost immediately, and again block on the lock. It is just a distraction from real issue (whatever that is)
    – jjanes
    Commented Jan 26, 2023 at 15:31
  • @jjanes True. I have amended the answer. Commented Jan 26, 2023 at 19:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.