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