[ Please keep the list cc'd ]
<azajac@ang.com.pl> writes:
>> What exactly are those join key values, and what are the min/max values
>> in bug_t2?
> min of Bug_t1.id = 42,
> max of Bug_t1.id = 393065,
> min of Bug_t2.id = 352448,
> max of Bug_t2.id = 388715,
> select count(id) from bug_t2
> 29
> select count(*) from bug_t2
> 278417
> And because there is only 29 not null records in bug_t2:
Oh, that's the real problem: thousands of nulls in bug_t2.
The planner is thinking those don't have to be scanned, but
the executor wasn't on the same page until very recently:
http://archives.postgresql.org/pgsql-committers/2010-05/msg00334.php
That patch will be in the next 8.3 update.
regards, tom lane