Re: Slow Vacuum was: vacuum output question

From: "Dan Armbrust" <daniel(dot)armbrust(dot)list(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Slow Vacuum was: vacuum output question
Date: 2009-01-07 17:26:39
Message-ID: 82f04dc40901070926u339b2ec4h298ba618526c4cc6@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I'm no closer to a solution, but here are some additional data points
- all taken on Fedora Core 6.

Postgres 8.1 built from source. Auto vacuum disabled.

Create Empty Database.
Run our load on the system for 2 hours to populate and exercise the database.
Run Vacuum. Takes more than a minute.
Run Vacuum immediately again. Takes more than a minute.
Reindex the database. Takes 10 seconds.
Run Vacuum again. Takes 2 seconds.
Allow load to run on the system for 30 minutes.
Run Vacuum again. Takes more than a minute.

Postgres 8.3 built from source. Auto vacuum disabled.

Create Empty Database.
Run our load on the system for 2 hours to populate and exercise the database.
Run Vacuum. Takes more than a minute.
Run Vacuum immediately again. Takes 15 seconds.
Run Vacuum immediately again. Takes 15 seconds.
Reindex the database. Takes 10 seconds.
Run Vacuum again. Takes 2 seconds.

So, PostgreSQL 8.3 shows better behaviour, but it is still showing
some sort of performance issue which a reindex fixes.
And then of course, the kicker is that we can't recreate any of these
issues when running the same exact test, on the same exact hardware -
but using a different underlying OS. When we were running under a
modern Ubuntu, the vacuum never takes more than 2 seconds. We will be
checking other OSs soon. I guess if we can't figure out what is
causing it, we can at least isolate the distros that we need to tell
our customers not to use (or to schedule a reindex if they insist on
not upgrading their OS)

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Scott Marlowe 2009-01-07 17:47:59 Re: Slow Vacuum was: vacuum output question
Previous Message Mohamed 2009-01-07 16:41:44 The length of a tsvector (lexemes + positions) must be less than 1 megabyte