From: | jboes(at)nexcerpt(dot)com (Jeff Boes) |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | Long-running DELETE |
Date: | 2002-01-15 19:02:22 |
Message-ID: | d40a65a1.0201151102.218752c@posting.google.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Okay, this is really starting to fry me:
I'm trying to delete 1000 rows from a table which is referenced by
several different other tables as a foreign key. I've turned on
debug_print_query to help track this down. When I do deletes from
some tables, I can delete hundreds of rows per second. When I delete
from the main table, it's about 1 row per second. I've turned off
every trigger in the database:
update pg_triggers set tgenabled=false;
I read that such a change might require restarting the backend, so
I've gone so far as to bounce the database after this step. What I
see in the log is
DEBUG: query: delete from a where id = 49;
DEBUG: query: SELECT oid FROM ONLY "a_r" WHERE "id" = $1 FOR UPDATE
OF "a_r"
DEBUG: query: SELECT oid FROM ONLY "a_c" WHERE "id" = $1 FOR UPDATE
OF "a_c"
DEBUG: query: SELECT oid FROM ONLY "j" WHERE "id" = $1 FOR UPDATE OF
"j"
DEBUG: query: SELECT oid FROM ONLY "a_r" WHERE "id" = $1 FOR UPDATE
OF "a_r"
DEBUG: query: SELECT oid FROM ONLY "a_c" WHERE "id" = $1 FOR UPDATE
OF "a_c"
DEBUG: query: SELECT oid FROM ONLY "j" WHERE "id" = $1 FOR UPDATE OF
"j"
DEBUG: query: SELECT oid FROM ONLY "a_r" WHERE "id" = $1 FOR UPDATE
OF "a_r"
DEBUG: query: SELECT oid FROM ONLY "a_c" WHERE "id" = $1 FOR UPDATE
OF "a_c"
DEBUG: query: SELECT oid FROM ONLY "j" WHERE "id" = $1 FOR UPDATE OF
"j"
DEBUG: query: delete from a where id = 50;
DEBUG: query: delete from a where id = 53;
etc.
From | Date | Subject | |
---|---|---|---|
Next Message | Josh Berkus | 2002-01-15 19:10:05 | Re: Problem with the postgresql operator. |
Previous Message | Steve Boyle (Roselink) | 2002-01-15 16:58:46 | Re: Hierarchical queries |