First try to VACUM ANALYZE.
if this dont help, try to drop the index and recrate it ?
also do you have enugh ram ?
> I'm having problems with delete commands in postgres. They are too slow.
> I'm trying to delete a set o 300 rows in table with 50000 rows with a
> simple command like:
>
> DELETE FROM table WHERE field1 = '4'
>
> When I run the explain it tells me that index_scan is being used. But to
> complete the delete it takes more than 30 minutes and the CPU use never
> rise above 10%. The server that runs postgres is a RedHat Linux 7.3 over
> a Pentium III 900 Mhz with 512 MB RAM
>
> Here's a part of my postgresql.conf:
>
> max_connections = 64
> sort_mem = 32168
> shared_buffers = 15200
> fsync = false
> enable_seqscan = false
> wal_buffers = 10
> wal_files = 10
> checkpoint_segments = 20
>
> --
> Diogo de Oliveira Biazus
> diogo@ikono.com.br
> Ikono Sistemas e Automação
> http://www.ikono.com.br
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 4: Don't 'kill -9' the postmaster
>