Herouth Maoz <herouth@unicell.co.il> writes:
> On 29/11/2011, at 09:13, Tom Lane wrote:
>> Yup, that's a clue all right. I'll bet a nickel that you don't
>> have an index on the foreign key's referencing column (ie,
>> sent_messages.subscription_id). That means each delete in
>> the referenced table has to seqscan the referencing table to
>> see if the delete would result in an FK violation.
> Makes sense. But shouldn't that be figured into the EXPLAIN plan?
If you run EXPLAIN ANALYZE, on a reasonably recent release, you'll see
the foreign-key trigger eating a lot of time. Plain EXPLAIN doesn't
show triggers because it has no idea how much time they'll take.
regards, tom lane