Skip site navigation (1) Skip section navigation (2)

Re: Planner creating ineffective plans on LEFT OUTER joins

From: Florian Pflug <fgp(dot)phlo(dot)org(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Planner creating ineffective plans on LEFT OUTER joins
Date: 2008-06-27 16:06:27
Message-ID: 48651003.7080108@gmail.com (view raw or flat)
Thread:
Lists: pgsql-hackers
Tom Lane wrote:
> Simon Riggs <simon(at)2ndquadrant(dot)com> writes:
>> On Thu, 2008-06-26 at 12:36 -0400, Robert Haas wrote:
>>> It's my understanding that the philosophy of the PGDG in the past has
>>> been to avoid putting any kind of hints into the system, focusing
>>> rather an improving the planning of queries.
> 
>> It's not a specific hint, its a general goal setting.
> 
> Right.  There are definitely places where we've made engineering
> judgements to not attempt a particular type of optimization because it'd
> be too expensive compared to the typical payoff.  Simon's idea has some
> merit for providing a framework to deal with that type of situation.
> However, just adding a GUC variable isn't going to make anything happen
> --- we'd need some concrete plans about what we'd do with it.

If the planner provided some facility to control how much effort it puts
into planning, we could even tune that knob automatically with something 
like

plan = plan_query(effort=0);
if (estimated_execution_cost > triviality_threshold)
   plan = plan_query(estimated_execution_cost * effort_by_cost_ratio);

regards, Forian Pflug

In response to

pgsql-hackers by date

Next:From: Jeff McKennaDate: 2008-06-27 16:07:16
Subject: Re: MSVC 2003 compile error with pg8.3.3
Previous:From: Heikki LinnakangasDate: 2008-06-27 16:04:50
Subject: Re: [HACKERS] Hint Bits and Write I/O

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group