Re: How is statement level read consistency implemented?

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: "Roberts, Jon" <Jon(dot)Roberts(at)asurion(dot)com>
Cc: Thomas Kellerer <spam_eater(at)gmx(dot)net>, pgsql-general(at)postgresql(dot)org
Subject: Re: How is statement level read consistency implemented?
Date: 2008-04-22 13:35:29
Message-ID: 20080422133529.GD5130@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Roberts, Jon wrote:

> > > -With autovacuum, does it skip these rows still being referenced
> > > in a transaction or does it wait?
> >
> > It skips them, the idea being that a future vacuum will remove them.
>
> Awesome. In a large data warehouse, the snapshot too old error is very
> annoying and I'm glad PostgreSQL is superior to Oracle in this regard.
> :)

Well, the disadvantage of the PostgreSQL way is that it keeps dead rows
around for longer than they're actually needed, and so it causes some
problems in pathological conditions -- for example when setting up large
replication sets with Slony, or during a pg_dump, no dead rows can be
removed. Since the Slony thing can take a very long time, dead rows
start to pile up in a way that can really harm performance.

We're currently working on it so that it is less of a problem for 8.4 ...

--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kerri Reno 2008-04-22 13:35:43 Re: FW: Re: create temp in function
Previous Message Kerri Reno 2008-04-22 13:26:58 Re: FW: Re: create temp in function