Stephan Szabo said:
> On Thu, 31 Jul 2003, Christopher Browne wrote:
>>   select * from log_table where request_time between 'june 11 2003'
>> and
>>                                                    'june 12 2003';
>> returns a plan:
>> Subquery Scan log_table  (cost=0.00..10950.26 rows=177126 width=314)
>>   ->  Append  (cost=0.00..10950.26 rows=177126 width=314)
>>         ->  Subquery Scan *SELECT* 1  (cost=0.00..3089.07 rows=50307
>> width=71)
>>               ->  Seq Scan on log_table_1  (cost=0.00..3089.07
>> rows=50307 width=71)
>>         ->  Subquery Scan *SELECT* 2  (cost=0.00..602.92 rows=9892
>> width=314)
>>               ->  Seq Scan on log_table_2  (cost=0.00..602.92
>> rows=9892 width=314)
>>         ->  Subquery Scan *SELECT* 3  (cost=0.00..2390.09 rows=39209
>> width=314)
>>               ->  Seq Scan on log_table_3  (cost=0.00..2390.09
>> rows=39209 width=314)
> What version are you using?  In 7.3 and up it should be willing to
> consider moving the clause down, unless there's something like a type
> mismatch (because in that case it may not be equivalent without a bunch
> more work on the clause).

That was 7.2.4, although I had also tried it on 7.4 (yesterday's CVS).

Which provides four findings:

1.  On 7.2.4, adding additional type info just doesn't help, fitting with
the notion that, consistent with your comment, improvement wouldn't happen
earlier than 7.3.

There's no help on 7.2 :-(, and the system I'm initially most interested
in using this on is still on 7.2.

2.  When I retried on 7.4, it _did_ find search paths based on Index Scan,
when I added in additional type information.  So the optimization I was
wishing for _is_ there :-).  In the longer term, that's very good news.

3.  I'll have to test this out on 7.3.4, now, as I hadn't, and it sounds
as though that is an interesting case.

4.  It's often necessary to expressly specify type information in queries
to get the optimizer to do the Right Thing.
(reverse (concatenate 'string "ofni.smrytrebil@" "enworbbc"))
Christopher Browne
(416) 646 3304 x124 (land)

---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to