Re: Slow delete with with cascading foreign keys

From: Matthias Karlsson <matthias(at)yacc(dot)se>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Slow delete with with cascading foreign keys
Date: 2008-10-20 18:20:49
Message-ID: 48FCCC01.4080906@yacc.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Tom Lane skrev:
> "Matthias Karlsson" <matthias(at)yacc(dot)se> writes:
>> 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.
>
> If it's a reasonably modern PG version, EXPLAIN ANALYZE will break out
> the time spent in each on-delete trigger, which should be enough to
> answer the question.
>
> regards, tom lane

Thanks, that gave me something to work with. I targeted the triggers that had the most "uses", but it did not seem to
help that much. I managed to reduce execution time with maybe 10-15%, but I'll try to apply indices more aggressively to
see if it helps.

// Matthias

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Robert Haas 2008-10-20 20:22:25 Re: [HACKERS] Hot Standby utility and administrator functions
Previous Message Tom Lane 2008-10-20 17:16:09 Re: index scan leads to result that is different from sec scan after upgrading to 8.3.4