On 2/10/2010 9:41 AM, Dann Corbit wrote:
The inserts are processed via an INSERT/SELECT statement.
A custom driver has been written that performs this operation
using the COPY API.
Aaah, so it's not really sending individual INSERT statements to the
database at all, you're using COPY behind the scenes. That actually
means that all your rows are inserted in one transaction after all.
I get many thousands of rows per second.
Yep. A COPY happens inside one transaction.
Are you using synchronous_commit=off and/or a commit delay?
I do not use synchronous_commit=off
Do you have fsync=off set in your postgresql.conf?
No.
Good!
Given the performance you were reporting, I thought I'd check. Your use
of COPY explains it, though, because you're actually doing all the work
inside one transaction so the database doesn't have to wait for the disk
after each row insert.
--
Craig Ringer
Tech-related writing at http://soapyfrogs.blogspot.com/
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general