Re: performance decrease after reboot - Mailing list pgsql-performance

From John Mendenhall
Subject Re: performance decrease after reboot
Date
Msg-id 20050720202832.GA22109@calvin.surfutopia.net
Whole thread Raw
In response to performance decrease after reboot  (John Mendenhall <john@surfutopia.net>)
List pgsql-performance
On Tue, 19 Jul 2005, John Mendenhall wrote:

> I tuned a query last week to obtain acceptable performance.
> Here is my recorded explain analyze results:
>
> LOG:  duration: 826.505 ms  statement: explain analyze
> [cut for brevity]
>
> I rebooted the database machine later that night.
> Now, when I run the same query, I get the following
> results:
>
> LOG:  duration: 6931.701 ms  statement: explain analyze
> [cut for brevity]

I just ran my query again, no changes from yesterday
and it is back to normal:

LOG:  duration: 795.839 ms  statement: explain analyze

What could have been the problem?

The major differences in the query plan are as follows:

(1) The one that runs faster uses a Hash Join at the
very top of the query plan.  It does a Hash Cond on
the country and code fields.

(2) The one that runs slower uses a Materialize with
the subplan, with no Hash items.  The Materialize does
Seq Scan of the countries table, and above it, a Join
Filter is run.

(3) The partners_pkey index on the partners table is
in a different place in the query.

Does anyone know what would cause the query plan to be
different like this, for the same server, same query?
I run vacuum analyze every night.  Is this perhaps the
problem?

What setting do I need to tweak to make sure the faster
plan is always found?

Thanks for any pointers in this dilemma.

JohnM

--
John Mendenhall
john@surfutopia.net
surf utopia
internet services

pgsql-performance by date:

Previous
From: Dirk Lutzebäck
Date:
Subject: Re: Optimizer seems to be way off, why?
Next
From: John A Meinel
Date:
Subject: Re: Optimizer seems to be way off, why?