On Tue, Apr 21, 2009 at 11:38 AM,  <vac...@quantentunnel.de> wrote:
> I've queries returning tupels of A, with a (sub-)selected constant-expression 
> that indicates whether a referenced tupel exists in B or not. For this issue 
> the EXISTS clause is used.
>
> In past (8.3) the planner resolves this into index-scans using existing 
> foreign-key indices -> fast query (1.5 seconds for comparison). Now (in 8.4) 
> the planner wants "semi-joins". Index-scans are not longer used and my query 
> needs 600 seconds to return.

That worries me a bit for one of our applications too. We use EXISTS
in several places to trick the planner when the statistics are way off
(cross columns/cross tables) and I'm not sure making EXISTS more
clever will help us.

-- 
Guillaume

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to