On Thu, Sep 17, 2009 at 07:45:45PM -0400, Andrew Dunstan wrote: > > > Dan Colish wrote: >> CREATE TABLE >> INSERT 0 100000 >> Timing is on. >> COPY 100000 >> Time: 83.273 ms >> BEGIN >> Time: 0.412 ms >> TRUNCATE TABLE >> Time: 0.357 ms >> COPY 100000 >> Time: 140.911 ms >> COMMIT >> Time: 4.909 ms >> >> >> > > Anything that doesn't have times that are orders of magnitude greater > than this is pretty much useless as a measurement of COPY performance, > IMNSHO. > > In this particular test, to check for paring times, I'd be inclined to > do copy repeatedly (i.e. probably quite a few thousand times) from an > empty file to test the speed. Something like: > > select current_timestamp; > begin; > truncate; > copy;copy;copy; ... > commit; > select current_timestamp; > > > (tests like this are really a good case for DO ' something'; - we could > put a loop in the DO.) > > cheers > > andrew >
Ok, so I ran something like you suggested and did a simple copy from an empty file to just test the parsing. I have the COPY statement run 3733 times in the transaction block and did the select timestamps, but I still only was a few milliseconds difference between the two versions. Maybe a more complex copy statment could be a better test of the parser, but I do not see a significant difference of parsing speed here. -- --Dan -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers