X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id A4371D794E for ; Wed, 12 Oct 2005 19:00:42 -0300 (ADT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 47599-08 for ; Wed, 12 Oct 2005 22:00:33 +0000 (GMT) Received: from smtp105.rog.mail.re2.yahoo.com (smtp105.rog.mail.re2.yahoo.com [206.190.36.83]) by svr1.postgresql.org (Postfix) with SMTP id EEE88D8185 for ; Wed, 12 Oct 2005 19:00:34 -0300 (ADT) Received: (qmail 47290 invoked from network); 12 Oct 2005 22:00:37 -0000 Received: from unknown (HELO phlogiston.dydns.org) (a.sullivan@rogers.com@209.222.54.227 with login) by smtp105.rog.mail.re2.yahoo.com with SMTP; 12 Oct 2005 22:00:37 -0000 Received: by phlogiston.dydns.org (Postfix, from userid 1000) id 438534173; Wed, 12 Oct 2005 18:00:36 -0400 (EDT) Date: Wed, 12 Oct 2005 18:00:36 -0400 From: Andrew Sullivan To: pgsql-performance@postgresql.org Subject: Re: Help tuning postgres Message-ID: <20051012220036.GE13571@phlogiston.dyndns.org> References: <1129128315.2995.174.camel@coppola.muc.ecircle.de> <1129136130.2995.188.camel@coppola.muc.ecircle.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1129136130.2995.188.camel@coppola.muc.ecircle.de> User-Agent: Mutt/1.5.9i X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, hits=0.032 required=5 tests=[AWL=-0.018, FORGED_RCVD_HELO=0.05] X-Spam-Level: X-Archive-Number: 200510/217 X-Sequence-Number: 14985 On Wed, Oct 12, 2005 at 06:55:30PM +0200, Csaba Nagy wrote: > Ok, that was the first thing I've done, checking out the explain of the > query. I don't really need the analyze part, as the plan is going for > the index, which is the right decision. The updates are simple one-row How do you know? You _do_ need the ANALYSE, because it'll tell you what the query _actually did_ as opposed to what the planner thought it was going to do. Note that EXPLAIN ANALYSE actually performs the work, so you better do it in a transaction and ROLLBACK if it's a production system. > Actually I've done an iostat run in the meantime (just learned how to > use it), and looks like the disk is 100 saturated. So it clearly is a > disk issue in this case. And it turns out the Oracle hardware has an Yes, but it could be a disk issue because you're doing more work than you need to. If your UPDATEs are chasing down a lot of dead tuples, for instance, you'll peg your I/O even though you ought to have I/O to burn. A -- Andrew Sullivan | ajs@crankycanuck.ca The whole tendency of modern prose is away from concreteness. --George Orwell