Re: Slow delete - Mailing list pgsql-general

From Tom Lane
Subject Re: Slow delete
Date
Msg-id 20073.1121276768@sss.pgh.pa.us
Whole thread Raw
In response to Slow delete  (Doug Hall <doughalldev@gmail.com>)
Responses Re: Slow delete
List pgsql-general
Doug Hall <doughalldev@gmail.com> writes:
> delete from citizen where id not in (select citizenid from
> citizen_stage);

> The explain select tells me that there is a sequential select of
> citizen_stage records. (??) There are 75009 citizen records and 14778
> records, and it's taking more than half an hour. How can I speed this
> up?

How old is your Postgres?  I'd expect 7.4 and up to do this with a hashed
IN, which'd be reasonably fast.  If the EXPLAIN output doesn't say
anything about a "hashed subplan", then either you've got an old version
or there's some sort of estimation problem.

If it is a hashed IN and it's still slow, I'd wonder about unindexed
foreign key references to the citizen table.

            regards, tom lane

pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Nulls in timestamps
Next
From: Tom Lane
Date:
Subject: Re: index bloat