Re: [PERFORM] Why is n_distinct always -1 for range types?

2013-09-25 Thread Josh Berkus
On 09/19/2013 01:47 PM, Josh Berkus wrote:
 Test:
 
 1. create a table with a range type column.
 2. insert 1000 identical values into that column.
 3. analyze
 4. n-distinct will still be listed as -1 (unique) for the column.
 
 Why?
 

Anyone?

-- 
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com


-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance


Re: [PERFORM] Why is n_distinct always -1 for range types?

2013-09-25 Thread Peter Geoghegan
On Thu, Sep 19, 2013 at 1:47 PM, Josh Berkus j...@agliodbs.com wrote:
 4. n-distinct will still be listed as -1 (unique) for the column.

 Why?


Because of this:

https://github.com/postgres/postgres/blob/master/src/backend/utils/adt/rangetypes_typanalyze.c#L205

We only collect and use histograms of lower and upper bounds for range
types, and the fraction of empty ranges.

-- 
Regards,
Peter Geoghegan


-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance