Re: Seq scans roadmap

CK Tan <cktan@greenplum.com>

From: "CK Tan" <cktan@greenplum.com>
To: "Tom Lane" <tgl@sss.pgh.pa.us>
Cc: "Luke Lonergan" <llonergan@greenplum.com>, "Simon Riggs" <simon@enterprisedb.com>, "Heikki Linnakangas" <heikki@enterprisedb.com>, "PostgreSQL-development" <pgsql-hackers@postgresql.org>, "Zeugswetter Andreas ADI SD" <ZeugswetterA@spardat.at>, "Jeff Davis" <pgsql@j-davis.com>
Date: 2007-05-14T02:36:57Z
Lists: pgsql-hackers
Sorry, I should have been clearer. I meant because we need to check  
for trigger firing pre/post insertion, and the trigger definitions  
expect tuples to be inserted one by one, therefore we cannot insert N- 
tuples at a time into the heap. Checking for triggers itself is not  
taking up much CPU at all. If we could predetermine that there is not  
any triggers for a relation, inserts into that relation could then  
follow a different path that inserts N-tuples at a time.

Regards,
-cktan

On May 13, 2007, at 4:54 PM, Tom Lane wrote:

> "CK Tan" <cktan@greenplum.com> writes:
>> COPY/INSERT are also bottlenecked on record at a time insertion into
>> heap, and in checking for pre-insert trigger, post-insert trigger and
>> constraints.
>
>> To speed things up, we really need to special case insertions without
>> triggers and constraints, [probably allow for unique constraints],
>
> Do you have any profiling data to back up these assertions?  I haven't
> noticed that firing zero tuples takes any visible percentage of COPY
> time.
>
> 			regards, tom lane
>