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
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 |