On Wed, Oct 1, 2014 at 9:43 PM, Rodrigo Barboza <rodrigombufrj@xxxxxxxxx> wrote:
Hello, I have a table that receives lots of updates and inserts.Auto vaccum is always being cancelled on that table.
Do you have a scheduled task that clusters or reindexes the table?
Newer versions of PostgreSQL will log the conflicting statement that caused the vacuum to cancel.
One day the database went on standby and I had to act manually to recover.
I'm not sure what that means. Do you mean it stopped accepting commands to prevent "wrap around" data loss? Once autovacuum starts running on a table in "prevent wrap around", then it no longer voluntarily yields to other processes trying to take a conflicting lock.
What should I do to avoid auto vaccum cancel?
If you have scheduled jobs that do something on the table that requires a lock which conflicts with autovac, then you might want to include a manual VACUUM in that job.
Also, what full version are you running?
Cheers,
Jeff