From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Stephen Denne" <Stephen(dot)Denne(at)datamail(dot)co(dot)nz> |
Cc: | "PostgreSQL-development" <pgsql-hackers(at)postgresql(dot)org>, "Pavan Deolasee" <pavan(dot)deolasee(at)gmail(dot)com> |
Subject: | Re: count(*) performance improvement ideas |
Date: | 2008-03-19 03:26:46 |
Message-ID: | 21266.1205897206@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
"Stephen Denne" <Stephen(dot)Denne(at)datamail(dot)co(dot)nz> writes:
> Tom Lane wrote
>> Umm ... AFAICS there is no need for an UPDATE to touch the count table
>> at all. You'd only need ON INSERT and ON DELETE triggers.
> I'm not referring to updates of my base table... the single row inserted was referring to the delta row...
> I'm trying to group together a large number of +1 or -1 deltas into a single delta per transaction.
Oh. You can't realistically do that from the level of individual ON
INSERT/DELETE triggers --- as you've found out, you end up with about
the same number of dead rows anyway. Collapsing a transaction's changes
into a single row would require keeping some intra-transaction state,
which is do-able at the C-code level but not from plpgsql.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Mark Mielke | 2008-03-19 05:31:16 | Re: count(*) performance improvement ideas |
Previous Message | Warren Turkal | 2008-03-19 03:26:15 | Re: timestamp datatype cleanup |