This service will be undergoing maintenance at 20:00 UTC, 2017-04-03. It is expected to last about 30 minutes
Bug 163733 - pg_autovacuum wrongly interprets sleep base value option
pg_autovacuum wrongly interprets sleep base value option
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: postgresql (Show other bugs)
4
All Linux
medium Severity low
: ---
: ---
Assigned To: Tom Lane
David Lawrence
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2005-07-20 14:31 EDT by Michal Piotrowski
Modified: 2013-07-02 23:06 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2005-07-20 15:21:43 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michal Piotrowski 2005-07-20 14:31:30 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.7.8) Gecko/20050524 Fedora/1.0.4-4 Firefox/1.0.4

Description of problem:
If I run pg_autovacuum with sleep base value option greater then 2200 its checking interval is to small.

Version-Release number of selected component (if applicable):
8.0.3-1

How reproducible:
Always

Steps to Reproduce:
1. Check if:
stats_start_collector = true
stats_row_level = true
are set in postgresql.conf
2. Run: pg_autovacuum -s 3600 -d 2

  

Actual Results:  You will see that autovacuum runs almost continously. It prints that it will wait for 3600 secs but it doesn't wait at all!

Expected Results:  Autovacuum should run every 3600 secs (or any other given time).

Additional info:

Observed wait time is different for different option values. For example for 2200, 2500, 3600 it doesn't wait at all. But for 5000 secs it waits for about 720 secs.
Comment 1 Tom Lane 2005-07-20 15:21:43 EDT
Yeah, the call to pg_usleep overflows at 2147 seconds.  This is fixed for
Postgres 8.1.  In the meantime, use a value of 2000 seconds ...

Note You need to log in before you can comment on or make changes to this bug.