X-Original-To: pgsql-performance-postgresql.org@postgresql.org Received: from localhost (mx1.hub.org [200.46.208.251]) by postgresql.org (Postfix) with ESMTP id E93339FA5CE for ; Fri, 16 Jun 2006 05:13:55 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.208.251]) (amavisd-new, port 10024) with ESMTP id 42636-06 for ; Fri, 16 Jun 2006 05:13:46 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from bioscene.co.jp (pee5980.hyogff01.ap.so-net.ne.jp [202.238.89.128]) by postgresql.org (Postfix) with SMTP id 175969F9CAA for ; Fri, 16 Jun 2006 05:13:45 -0300 (ADT) Received: (qmail 6926 invoked from network); 16 Jun 2006 08:22:02 -0000 Received: from unknown (HELO eth0.sonoda) (192.168.2.5) by bioscene.co.jp with SMTP; 16 Jun 2006 08:22:02 -0000 Subject: Re: Delete operation VERY slow... From: David Leangen Reply-To: postgres@leangen.net To: pgsql-performance@postgresql.org In-Reply-To: <674d1f8a0606160022p1b042676gba28553bac5ab5ea@mail.gmail.com> References: <1150441126.4812.23.camel@sonoda.bioscene.co.jp> <674d1f8a0606160022p1b042676gba28553bac5ab5ea@mail.gmail.com> Content-Type: text/plain Date: Fri, 16 Jun 2006 17:12:22 +0900 Message-Id: <1150445542.4812.34.camel@sonoda.bioscene.co.jp> Mime-Version: 1.0 X-Mailer: Evolution 2.6.0 (2.6.0-1) Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200606/342 X-Sequence-Number: 19699 Wow! That was almost instantaneous. I can't believe the difference. The only inconvenience is that I need to remove all the foreign key constraints before truncating, then put them back after. But I suppose it is a small price to pay for this incredible optimization. Thank you! On Fri, 2006-06-16 at 12:52 +0530, Gourish Singbal wrote: > > David, > > Truncate table would be a good idea if u want to delete all the data > in the table. > You need not perform vacuum in this case since there are no dead rows > created. > > ~gourish > > > On 6/16/06, David Leangen wrote: > > Hello! > > I am trying to delete an entire table. There are about 41,000 > rows in > the table (based on count(*)). > > I am using the SQL comment: delete from table; > > The operation seems to take in the order of hours, rather than > seconds > or minutes. > > "Explain delete from table" gives me: > > QUERY PLAN > ---------------------------------------------------------------- > Seq Scan on table (cost=0.00..3967.74 rows=115374 width=6) > (1 row) > > > I am using an Intel Pentium D 2.8GHz CPU. My system has about > 1.2GB of > RAM. This should be ok... my database isn't that big, I think. > > > Any ideas why this takes so long and how I could speed this > up? > > Or alternatively, is there a better way to delete all the > contents from > a table? > > > Thank you! > > > > ---------------------------(end of > broadcast)--------------------------- > TIP 5: don't forget to increase your free space map settings > > > > -- > Best, > Gourish Singbal