Re: [SQL] Joining bug????

pierre@desertmoon.com

From: pierre <pierre@desertmoon.com>
To: "David Hartwig" <daveh@insightdist.com>
Cc: <pgsql-sql@postgreSQL.org>
Date: 1998-10-28T01:38:55Z
Lists: pgsql-sql
>Nice query.   You mentioned having indexes on id columns etc.    Are the 
>indices
>single column, or multi-column?   You may want to consider making some of 
>them
>multi-column.   The EXPLAIN does indicate usage of your indices, but it 
>may not be
>optimal.   If the distribution of your data in the indices is such that 
>the each
>index scan must go through large chunks of data to qualify the other 
>attributes in
>the join, it will run slow.   By adding some well placed multi-part 
>indices, the
>index scans will be narrower in their scan sets.    Or not.
>
>Also,  I could be wrong, but, I have found even batch loaded data needs a 
>VACUUM
>ANALYZE to gather distributions statistics.
>
>pierre@desertmoon.com wrote:
>
>> >

Thanks David. The vacuum analyze did the trick. I made the invalid 
assumption that the statistics would be up to date just after a copy and 
index creation. They were not. As soon as I ran the vacuum across all my 
tables the explains changed and I got a MAJOR speed increase and the most 
complicated query takes no more than 4-8 seconds. This is perfect.

Perhaps this (bug??) should be documented? I've seen documentation 
relating to the vacuum analyze, but I always made that invalid 
assumption. *sigh* Ah well you live and you learn. :)

-=pierre