Re: Why do we let autovacuum give up?

From: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
To: Mark Kirkwood <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, "Joshua D(dot) Drake" <jd(at)commandprompt(dot)com>
Subject: Re: Why do we let autovacuum give up?
Date: 2014-01-23 23:13:38
Message-ID: CAMkU=1xCO_FU=qPWZXQPpWtuN+XH3E912zcoGNwTxZpB9+Xkiw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jan 23, 2014 at 1:41 PM, Mark Kirkwood <
mark(dot)kirkwood(at)catalyst(dot)net(dot)nz> wrote:

> On 24/01/14 10:16, Mark Kirkwood wrote:
>
>> On 24/01/14 10:09, Robert Haas wrote:
>>
>>> On Thu, Jan 23, 2014 at 4:03 PM, Mark Kirkwood
>>> <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz> wrote:
>>>
>>>> On 24/01/14 09:49, Tom Lane wrote:
>>>>
>>>>> 2. What have you got that is requesting exclusive lock on pg_attribute?
>>>>> That seems like a pretty unfriendly behavior in itself. regards, tom
>>>>> lane
>>>>>
>>>> I've seen this sort of problem where every db session was busily
>>>> creating
>>>> temporary tables. I never got to the find *why* they needed to make so
>>>> many,
>>>> but it seemed like a bad idea.
>>>>
>>> But... how does that result on a vacuum-incompatible lock request
>>> against pg_attribute?
>>>
>>> I see that it'll insert lots of rows into pg_attribute, and maybe
>>> later delete them, but none of that blocks vacuum.
>>>
>>>
>> That was my thought too - if I see it happening again here (was a year or
>> so ago that I saw some serious pg_attribute bloat) I'll dig deeper.
>>
>>
>>
> Actually not much digging required. Running the attached script via
> pgbench (8 sessions) against a default configured postgres 8.4 sees
> pg_attribute get to 1G after about 15 minutes.
>

At that rate, with default throttling, it will be a close race whether
autovac can vacuum pages as fast as they are being added. Even if it never
gets cancelled, it might not ever finish.

Cheers,

Jeff

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Mark Kirkwood 2014-01-23 23:28:38 Re: Why do we let autovacuum give up?
Previous Message Josh Berkus 2014-01-23 23:12:54 Re: Why do we let autovacuum give up?