Re: database bloat, non removovable rows, slow query etc... [RESOLVED]

From: Gregory Stark <gsstark(at)mit(dot)edu>
To: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
Cc: Gregory Stark <gsstark(at)mit(dot)edu>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Matteo Sgalaberni <sgala(at)sgala(dot)com>, pgsql-performance(at)postgresql(dot)org
Subject: Re: database bloat, non removovable rows, slow query etc... [RESOLVED]
Date: 2006-09-05 00:30:15
Message-ID: 878xkz17fs.fsf@stark.xeocode.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance


Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:

> Gregory Stark wrote:
> > Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
> >
> > > Matteo Sgalaberni <sgala(at)sgala(dot)com> writes:
> > > > Good to know this...but why this behaviour? it'is lovely...:)
> > >
> > > Open transactions are tracked across the whole cluster. This is
> > > necessary when vacuuming shared catalogs. In principle we could
> > > track per-database xmin values as well, but the distributed overhead
> > > that'd be added to *every* GetSnapshotData call is a bit worrisome.
> >
> > Don't we do that now in CVS (ie, in 8.2)?
>
> No, we don't.

I must be misunderstanding Tom's comment then.

What I'm referring to is lazy_vacuum_rel() calls vacuum_set_xid_limits with
the relisshared flag of the relation. vacuum_set_xid_limits passes that to
GetOldestXmin as the allDbs parameter. GetOldestXmin ignores transactions not
connected to the same database unless allDbs is true.

--
greg

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Tom Lane 2006-09-05 03:17:06 Re: database bloat, non removovable rows, slow query etc... [RESOLVED]
Previous Message Alvaro Herrera 2006-09-04 22:47:16 Re: database bloat, non removovable rows, slow query etc... [RESOLVED]