From: | Rod Taylor <rbt(at)rbt(dot)ca> |
---|---|
To: | Ivan Voras <ivoras(at)fer(dot)hr> |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: Optimizing DELETE |
Date: | 2006-09-19 13:53:07 |
Message-ID: | 1158673987.71040.24.camel@home |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On Tue, 2006-09-19 at 15:22 +0200, Ivan Voras wrote:
> I've just fired off a "DELETE FROM table" command (i.e. unfiltered
> DELETE) on a trivially small table but with many foreign key references
> (on similar-sized tables), and I'm waiting for it to finish. It's been
> 10 minutes now, which seems very excessive for a table of 9000 rows on a
> 3 GHz desktop machine.
I would guess that a few of those referenced tables are missing indexes
on the referenced column.
> 'top' says it's all spent in USER time, and there's a ~~500KB/s write
> rate going on. Just before this DELETE, I've deleted data from a larger
> table (50000 rows) using the same method and it finished in couple of
> seconds - maybe it's a PostgreSQL bug?
>
> My question is: assuming it's not a bug, how to optimize DELETEs?
> Increasing work_mem maybe?
>
> (I'm using PostgreSQL 8.1.4 on FreeBSD 6- amd64)
>
> (I know about TRUNCATE; I need those foreign key references to cascade)
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: explain analyze is your friend
>
From | Date | Subject | |
---|---|---|---|
Next Message | Bucky Jordan | 2006-09-19 13:58:20 | Re: Large tables (was: RAID 0 not as fast as expected) |
Previous Message | Ivan Voras | 2006-09-19 13:22:34 | Optimizing DELETE |