Slow delete with with cascading foreign keys

From: "Matthias Karlsson" <matthias(at)yacc(dot)se>
To: pgsql-general(at)postgresql(dot)org
Subject: Slow delete with with cascading foreign keys
Date: 2008-10-20 12:46:05
Message-ID: 83eb635f0810200546ta5798d1n45b3c03322099fd@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I have a rather complex set of relations, connected with cascading
foreign keys on delete. I'm experiencing very slow performance when
deleting *the* lead node, which everything eventually depends on. The
number of records ultimately to be deleted aren't that many (perhaps
2000-3000) but there are maybe 30 relations involved. I understand
that this is most likely due to missing indices, but I have been
unable to figure out how to get PostgreSQL to tell me where the
performance bottleneck is.

Say my simple query looks like "delete from foo where id = 1". An
"explain" on this won't yield any information for example.

Is there any way to get PostgreSQL to do an analys of a delete
statement like the way I need?

// Matthias

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tom Lane 2008-10-20 13:08:47 Re: Slow delete with with cascading foreign keys
Previous Message Tom Lane 2008-10-20 12:34:32 Re: IS NULL seems to return false, even when parameter is NULL