Re: VACUUM ANALYZE blocking both reads and writes to a table

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Peter Schuller <peter(dot)schuller(at)infidyne(dot)com>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: VACUUM ANALYZE blocking both reads and writes to a table
Date: 2008-06-30 16:23:06
Message-ID: 20080630162306.GA18252@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Peter Schuller wrote:
> Actually, while on the topic:
>
> > date: 2007-09-10 13:58:50 -0400; author: alvherre; state: Exp; lines: +6 -2;
> > Remove the vacuum_delay_point call in count_nondeletable_pages, because we hold
> > an exclusive lock on the table at this point, which we want to release as soon
> > as possible. This is called in the phase of lazy vacuum where we truncate the
> > empty pages at the end of the table.
>
> Even with the fix the lock is held. Is the operation expected to be
> "fast" (for some definition of "fast") and in-memory, or is this
> something that causes significant disk I/O and/or scales badly with
> table size or similar?

It is fast.

> I.e., is this enough that, even without the .4 bug, one should not
> really consider VACUUM ANALYZE non-blocking with respect to other
> transactions?

You should consider it non-blocking.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Moritz Onken 2008-06-30 16:42:07 Re: Planner should use index on a LIKE 'foo%' query
Previous Message Matthew Wakeling 2008-06-30 16:21:19 Re: Planner should use index on a LIKE 'foo%' query