I have a wee database server which regularly tries to insert 1.5 million or even 15 million new rows into a 400 million row table. Sometimes these inserts take hours. The actual query to produces the join is fast. It's the insert which is slow. INSERT INTO File (FileIndex, JobId, PathId, FilenameId, LStat, MD5, DeltaSeq) SELECT batch_testing.FileIndex, batch_testing.JobId, Path.PathId, Filename.FilenameId, batch_testing.LStat, batch_testing.MD5, batch_testing.DeltaSeq FROM batch_testing JOIN Path ON (batch_testing.Path = Path.Path) JOIN Filename ON (batch_testing.Name = Filename.Name); This is part of the plan: http://img.ly/images/9374145/full created via http://tatiyants.com/pev/#/plans This gist contains postgresql.conf, zfs settings, slog, disk partitions. I'm tempted to move it to faster hardware, but in case I've missed something basic... Thank you. |
Attachment:
signature.asc
Description: Message signed with OpenPGP using GPGMail