From: | Justin Pryzby <pryzby(at)telsasoft(dot)com> |
---|---|
To: | Dinesh Chandra 12108 <Dinesh(dot)Chandra(at)cyient(dot)com> |
Cc: | Nur Agus <nuragus(dot)linux(at)gmail(dot)com>, Jeff Janes <jeff(dot)janes(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org |
Subject: | Re: Performance issue in PostgreSQL server... |
Date: | 2017-03-06 05:24:02 |
Message-ID: | 20170306052402.GC16088@telsasoft.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On Sun, Mar 05, 2017 at 08:23:08PM -0800, Jeff Janes wrote:
> On Fri, Mar 3, 2017 at 4:44 AM, Dinesh Chandra 12108 <Dinesh(dot)Chandra(at)cyient(dot)com> wrote:
> > The below is the output for psql=> EXPLAIN ANALYZE SELECT DISTINCT
> > feature_id FROM evidence.point p INNER JOIN evidence.observation_evidence
> > oe ON p.feature_id = oe.evd_feature_id WHERE p.domain_class_id IN (11) AND
> > (p.modification_time > '2015-05-10 00:06:56.056 IST' OR
> > oe.modification_time > '2015-05-10 00:06:56.056 IST') ORDER BY feature_id
> ...
>
> > -> Index Scan using point_domain_class_id_index on point p (cost=0.00..1483472.70 rows=1454751 width=16) (actual time=27.265..142101.1 59 rows=1607491 loops=1)
> > Index Cond: (domain_class_id = 11)
>
> Why wouldn't this be using a bitmap scan rather than a regular index scan?
> It seems like it should prefer the bitmap scan, unless the table is well
> clustered on domain_class_id. In which case, why isn't it just faster?
Could you send:
SELECT * FROM pg_stats WHERE tablename='point' AND attname='domain_class_id' ;
.. or if that's too verbose or you don't want to share the histogram or MCV
list:
SELECT correlation FROM pg_stats WHERE tablename='point' AND attname='domain_class_id' ;
Justin
From | Date | Subject | |
---|---|---|---|
Next Message | Dinesh Chandra 12108 | 2017-03-06 12:17:22 | Re: Performance issue in PostgreSQL server... |
Previous Message | Jeff Janes | 2017-03-06 04:25:23 | Re: Speeding up JSON + TSQUERY + GIN |