Thread: BUG #14941: Vacuum crashes

BUG #14941: Vacuum crashes

From
lyes.amd@gmail.com
Date:
The following bug has been logged on the website:

Bug reference:      14941
Logged by:          Lyes Ameddah
Email address:      lyes.amd@gmail.com
PostgreSQL version: 9.6.0
Operating system:   CentOs 7
Description:

Hello, 

I make a complete empty once a week in an automated way and it happens that
the vacuum is stuck on a table (perhaps another process has a lock first).


The behavior I would like to see is that the void ignores this table and
moves to another instead of being blocked. 

Is it possible to have a solution to this problem please? 
Thank you!


Re: BUG #14941: Vacuum crashes

From
Tomas Vondra
Date:
On 12/01/2017 05:09 PM, lyes.amd@gmail.com wrote:
> The following bug has been logged on the website:
> 
> Bug reference:      14941
> Logged by:          Lyes Ameddah
> Email address:      lyes.amd@gmail.com
> PostgreSQL version: 9.6.0

The current minor version in 9.6 branch is 9.6. You're missing a year
worth of bugfixes ...

> Operating system:   CentOs 7
> Description:        
> 
> Hello, 
> 
> I make a complete empty once a week in an automated way and it happens that
> the vacuum is stuck on a table (perhaps another process has a lock first).
> 

1) Completely empty what?

2) Do you mean autovacuum or manual vacuum?

3) Do you see waiting locks in pg_locks catalog while this is happening?

    SELECT * FROM pg_locks WHERE NOT granted;

> 
> The behavior I would like to see is that the void ignores this table and
> moves to another instead of being blocked. 
> 

I believe autovacuum should not block waiting for a heavy-weight lock on
a table since this commit that went into 9.1:

https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=32896c40ca766146312b28a5a0eb3f66ca0300ed

So I'm wondering what problem you're running into.


regards

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services