Re: Speedier count(*)

From: Gavin Sherry <swm(at)alcove(dot)com(dot)au>
To: Tino Wildenhain <tino(at)wildenhain(dot)de>
Cc: Mark Cotner <mcotner(at)yahoo(dot)com>, Dan Harris <fbsd(at)drivefaster(dot)net>, pgsql-performance(at)postgresql(dot)org
Subject: Re: Speedier count(*)
Date: 2005-08-11 10:36:58
Message-ID: Pine.LNX.4.58.0508112035580.1719@linuxworld.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Thu, 11 Aug 2005, Tino Wildenhain wrote:

> Am Donnerstag, den 11.08.2005, 00:40 -0400 schrieb Mark Cotner:
> > Here's a trigger I wrote to perform essentially the same purpose. The nice
> > thing about this is it keeps the number up to date for you, but you do incur
> > slight overhead.
> ...
> >
> > CREATE TRIGGER del_rowcount_tr BEFORE DELETE ON test FOR EACH ROW EXECUTE
> > PROCEDURE del_rowcount();
> > CREATE TRIGGER add_rowcount_tr BEFORE INSERT ON test FOR EACH ROW EXECUTE
> > PROCEDURE add_rowcount();
> >
> > INSERT INTO rowcount (tablename) VALUES ('test');
> ...
>
> beware of problems with concurrency and even what happens
> if transactions roll back. Maybe you can "fix" it a bit
> by regulary correcting the count via cronjob or so.

What problems? MVCC takes care of this.

Gavin

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Tino Wildenhain 2005-08-11 10:52:16 Re: Speedier count(*)
Previous Message Tino Wildenhain 2005-08-11 07:24:08 Re: Speedier count(*)