Re: Deleting Records - Mailing list pgsql-performance

From Nörder-Tuitje, Marcus
Subject Re: Deleting Records
Date
Msg-id 16F953410A0F1346848DCB476A989CFE01D559@swtexchange2.technology.de
Whole thread Raw
In response to Deleting Records  ("Christian Paul B. Cosinas" <cpc@cybees.com>)
List pgsql-performance
what about firing a

DELETE FROM qc_session S
       WHERE EXISTS (SELECT *
                       FROM item_qc_doer i
                      WHERE i.item_id = s.item_id);

and

DELETE FROM item_qc_doer S
       WHERE EXISTS (SELECT *
                       FROM item_qc_doer i
                      WHERE i.item_id = s.item_id);


this might be faster.

another way to speed up deletes might be disabling foreign keys.

also a SET ENABLE_SEQSCAN=FALSE; can speed up queries (force use of indices for access)


do you have a EXPLAIN for us ? do you have a index on item_id on your tables ?

questions by questions ;-)



mfg


-----Ursprüngliche Nachricht-----
Von: pgsql-performance-owner@postgresql.org
[mailto:pgsql-performance-owner@postgresql.org]Im Auftrag von Christian
Paul B. Cosinas
Gesendet: Donnerstag, 20. Oktober 2005 10:44
An: pgsql-performance@postgresql.org
Betreff: [PERFORM] Deleting Records


Hi!

I'm experiencing a very slow deletion of records. Which I thin is not right.
I have a Dual Xeon Server with 6gig Memory.
I am only deleting about 22,000 records but it took me more than 1 hour to
finish this.

What could possibly I do so that I can make this fast?

Here is the code inside my function:

    FOR temp_rec IN SELECT * FROM item_qc_doer LOOP
        DELETE FROM qc_session WHERE item_id = temp_rec.item_id;
        DELETE FROM item_qc_doer WHERE item_id = temp_rec.item_id;
    END LOOP;

Item_qc_oder table contains 22,000 records.


I choose Polesoft Lockspam to fight spam, and you?
http://www.polesoft.com/refer.html


---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend



pgsql-performance by date:

Previous
From: Csaba Nagy
Date:
Subject: Re: Deleting Records
Next
From: Christopher Kings-Lynne
Date:
Subject: Re: Deleting Records