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 B8FA19FB216 for ; Sat, 15 Jul 2006 17:23:02 -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 94212-10 for ; Sat, 15 Jul 2006 17:22:53 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from mail.l39a.com (host123-67.pool8288.interbusiness.it [82.88.67.123]) by postgresql.org (Postfix) with ESMTP id B71079FB210 for ; Sat, 15 Jul 2006 17:22:53 -0300 (ADT) Received: from [172.16.0.1] (unknown [151.57.253.237]) by mail.l39a.com (Postfix) with ESMTP id 174CC25F481; Sat, 15 Jul 2006 22:22:52 +0200 (CEST) Subject: Re: Big differences in plans between 8.0 and 8.1 From: Gabriele Turchi To: Joe Conway Cc: Michael Fuhr , pgsql-performance@postgresql.org, Marco Colombo In-Reply-To: <44B94A51.9050108@joeconway.com> References: <1152972852.3541.0.camel@apollo5.casa.intranet> <20060715190210.GA76277@winnie.fuhr.org> <1152993350.3541.22.camel@apollo5.casa.intranet> <44B94A51.9050108@joeconway.com> Content-Type: text/plain Organization: L39A S.r.l. Date: Sat, 15 Jul 2006 22:22:50 +0200 Message-Id: <1152994970.3541.31.camel@apollo5.casa.intranet> Mime-Version: 1.0 X-Mailer: Evolution 2.6.2 (2.6.2-1.fc5.5) Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200607/154 X-Sequence-Number: 20014 Il giorno sab, 15/07/2006 alle 13.04 -0700, Joe Conway ha scritto: > Gabriele Turchi wrote: > > Running an ANALYZE really change the plan, now it is fast as before > > (8.0). > > > > On the production system a VACUUM FULL ANALYZE is run every morning > > after a clean-up, when the "registrazioni" table is empty. During the > > day this table fills up (about 500 record any day), and apparently the > > performances are free-falling very quickly. This behaviour has not > > changed between the old and the new installation. > > > > Can you suggest an easy way to collect and keep up-to-date these > > statistics in a very low-impact way? > > > > Why not just periodically (once an hour?) run "ANALYZE registrazioni;" > during the day. This will only update the statistics, and should be very > low impact. > This is my "solution" too... but: is enough? Or else: there is a better way to do this? If the performance in the better case is 50 times faster than the worse case, during an hour (50/100 record inserted in "registrazioni") how much the performance can fall before the new "ANALYZE" is run? Otherwise, running ANALYZE more frequently can badly affect the overall performance? A so big difference in postgres performance, can be considered a bug or a over-optimization in the plan making? Why (at least apparently) the 8.0 version is not affected? > HTH, > > Joe > > ---------------------------(end of broadcast)--------------------------- > TIP 6: explain analyze is your friend Thank you all very much, Gabriele