Stephen Frost <sfrost@xxxxxxxxxxx> writes: > While it's true that Access almost certainly takes some shortcuts, 24 > minutes for an update across 1.2 millon rows seems an awefully long time > for Postgres. I did some experiments along this line with a trivial table (2 integer columns) of 1.28M rows. I used CVS tip with all parameters at defaults. With no indexes, an UPDATE took about 50 seconds. With one index, it took 628 seconds. It's not hard to believe you could get to Jay's figures with multiple indexes. Looking in the postmaster log, I see I was getting checkpoints every few seconds. Increasing checkpoint_segments to 30 (a factor of 10) brought it down to 355 seconds, and then increasing shared_buffers to 20000 brought it down to 165 sec. Separating WAL and data onto different disks would have helped too, no doubt, but I'm too lazy to try it. regards, tom lane