Re: BUG #2658: Query not using index - Mailing list pgsql-performance

From Tom Lane
Subject Re: BUG #2658: Query not using index
Date
Msg-id 10941.1159908489@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #2658: Query not using index  (Graham Davis <gdavis@refractions.net>)
Responses Re: BUG #2658: Query not using index  (Graham Davis <gdavis@refractions.net>)
List pgsql-performance
Graham Davis <gdavis@refractions.net> writes:
> How come an aggreate like that has to use a sequential scan?  I know
> that PostgreSQL use to have to do a sequential scan for all aggregates,
> but there was support added to version 8 so that aggregates would take
> advantage of indexes.

Not in a GROUP BY context, only for the simple case.  Per the comment in
planagg.c:

     * We don't handle GROUP BY, because our current implementations of
     * grouping require looking at all the rows anyway, and so there's not
     * much point in optimizing MIN/MAX.

The problem is that using an index to obtain the maximum value of ts for
a given value of assetid is not the same thing as finding out what all
the distinct values of assetid are.

This could possibly be improved but it would take a considerable amount
more work.  It's definitely not in the category of "bug fix".

            regards, tom lane

pgsql-performance by date:

Previous
From: Bruno Wolff III
Date:
Subject: Re: BUG #2658: Query not using index
Next
From: Graham Davis
Date:
Subject: Re: BUG #2658: Query not using index