Thread: explain analyze results are different for each iteration

explain analyze results are different for each iteration

From
Robert Davis
Date:
I'm trying to benchmark some complex sql queries.  One query, in 
particular, is causing problems -- its cost values can vary from 228 
to 907, its Total Runtimes from 60 ms to 5176 ms.  The query plans 
show that the optimizer is choosing different plans for different 
iterations of the same query.  Does anyone have any idea what's 
going on here or maybe how I can force Postgres to prefer the faster 
plan?

The query plans are very long (11 tables joined) but I can include 
them if it might help.  Thanks for any advice,

Roberto


Re: explain analyze results are different for each iteration

From
"Gregory S. Williamson"
Date:
Are you forcing stuff out of cache (both postgres and OS) ? I've found that this can make a huge difference with some
queries... not sure that this would make it have different plans, though. 

My ill-informied $0.02 worth ... fwiw

Greg Williamson
DBA
GlobeXplorer LLC

-----Original Message-----
From:    Robert Davis [mailto:robert@faithwestinc.com]
Sent:    Tue 9/14/2004 6:21 PM
To:    pgsql-sql@postgresql.org
Cc:
Subject:    [SQL] explain analyze results are different for each iteration
I'm trying to benchmark some complex sql queries.  One query, in
particular, is causing problems -- its cost values can vary from 228
to 907, its Total Runtimes from 60 ms to 5176 ms.  The query plans
show that the optimizer is choosing different plans for different
iterations of the same query.  Does anyone have any idea what's
going on here or maybe how I can force Postgres to prefer the faster
plan?

The query plans are very long (11 tables joined) but I can include
them if it might help.  Thanks for any advice,

Roberto

---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?
              http://www.postgresql.org/docs/faqs/FAQ.html





Re: explain analyze results are different for each iteration

From
Stephan Szabo
Date:
On Tue, 14 Sep 2004, Robert Davis wrote:

> I'm trying to benchmark some complex sql queries.  One query, in
> particular, is causing problems -- its cost values can vary from 228
> to 907, its Total Runtimes from 60 ms to 5176 ms.  The query plans
> show that the optimizer is choosing different plans for different
> iterations of the same query.  Does anyone have any idea what's
> going on here or maybe how I can force Postgres to prefer the faster
> plan?
>
> The query plans are very long (11 tables joined) but I can include
> them if it might help.  Thanks for any advice,

11 tables.  You might want to see if raising geqo_threshold stabilizes the
plans since IIRC that's the threshold for using the genetic optimizer.