Re: BUG #1753: Query Optimizer does not work well with libpg

From: Oliver Jowett <oliver(at)opencloud(dot)com>
To: andrew(at)supernews(dot)com
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #1753: Query Optimizer does not work well with libpg
Date: 2005-07-06 00:25:28
Message-ID: 42CB24F8.7080607@opencloud.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Andrew - Supernews wrote:

> The problem is that even with the unnamed statement and deferred planning,
> the planner still has to treat the parameters as variables, not constants,
> since nothing in the protocol stops you from running multiple portals from
> the unnamed statement. This can make a significant difference, especially
> where function calls are involved and major optimizations can be made on
> constant values as a result of inlining.

Sure, expression optimization is less aggressive, but is that on its own
really going to produce a 100-fold difference in query execution?

The main problem pre-8.0 (or with named statements) is that index
selectivity estimates go out the window with a parameterized query, so a
much more general (and slower) plan gets chosen. The 8.0
unnamed-statement behaviour glues the actual parameter values into the
selectivity estimates so in theory you should get the same plan for the
unparameterized and parameterized-unnamed-statement cases.

This is why I'd like to see the actual query..

-O

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Andrew - Supernews 2005-07-06 00:51:04 Re: BUG #1753: Query Optimizer does not work well with libpg
Previous Message Andrew - Supernews 2005-07-06 00:03:01 Re: BUG #1753: Query Optimizer does not work well with libpg