Re: Planner hints in Postgresql - Mailing list pgsql-hackers

From Claudio Freire
Subject Re: Planner hints in Postgresql
Date
Msg-id CAGTBQpaModPwpyc5iGNvWBaBohZAnkOn-1aPKokbOm_UxT9fvQ@mail.gmail.com
Whole thread
In response to Re: Planner hints in Postgresql  (Jim Nasby <jim@nasby.net>)
Responses Re: Planner hints in Postgresql
List pgsql-hackers

On Mon, Mar 17, 2014 at 7:09 PM, Jim Nasby <jim@nasby.net> wrote:
On 3/17/14, 2:16 PM, Merlin Moncure wrote:
On Mon, Mar 17, 2014 at 1:45 PM, Pavel Stehule<pavel.stehule@gmail.com>  wrote:
>I don't believe so SELECTIVITY can work well too. Slow queries are usually
>related to some strange points in data. I am thinking so well concept should
>be based on validity of estimations. Some plans are based on totally wrong
>estimation, but should be fast due less sensitivity to bad estimations. So
>well concept is penalization some risk plans - or use brute force - like
>COLUMN store engine does. Their plan is usually simply and tolerant to bad
>estimations.
Disagree.  There is a special case of slow query where problem is not
with the data but with the expression over the data; something in the
query defeats sampled selectivity.  Common culprits are:

*) CASE expressions
*) COALESCE
*) casts
*) simple tranformational expressions
*) predicate string concatenation

*) time/date functions, ie WHERE date_trunc( 'quarter', some_timestamp ) = '2014-1-1'

Though, in this case it's probably much better to teach the parser how to turn that into a range expression.


Maybe, maybe not.

An index over the truncated time can potentially be much more efficient.

pgsql-hackers by date:

Previous
From: Jim Nasby
Date:
Subject: Re: Planner hints in Postgresql
Next
From: Jim Nasby
Date:
Subject: Re: Planner hints in Postgresql