| From: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
|---|---|
| To: | Laurent Debacker <debackerl(at)gmail(dot)com> |
| Cc: | "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org> |
| Subject: | Re: bitmap heap scan recheck for gin/fts with no lossy blocks |
| Date: | 2015-07-23 18:04:16 |
| Message-ID: | CAMkU=1yU=MFPCAhqZTsRodzFE=Ve2=gvkC1GZ2fDPPKbYi+Pxg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-performance |
On Thu, Jul 23, 2015 at 9:58 AM, Laurent Debacker <debackerl(at)gmail(dot)com>
wrote:
> Hi,
>
> I have read that GIN indexes don't require a recheck cond for full text
> search as long as work_mem is big enough, otherwise you get lossy blocks,
> and the recheck cond.
>
> In my case, I have no lossy blocks (from what I could tell), but I do have
> a recheck...
>
> EXPLAIN (ANALYZE, BUFFERS) SELECT COUNT(1) FROM enterprises WHERE fts @@
> 'activ'::tsquery
>
> "Aggregate (cost=264555.07..264555.08 rows=1 width=0) (actual
> time=25813.920..25813.921 rows=1 loops=1)"
> " Buffers: shared hit=1 read=178192"
> " -> Bitmap Heap Scan on enterprises (cost=5004.86..263202.54
> rows=541014 width=0) (actual time=170.546..25663.048 rows=528376 loops=1)"
> " Recheck Cond: (fts @@ '''activ'''::tsquery)"
> " Heap Blocks: exact=178096"
> " Buffers: shared hit=1 read=178192"
> " -> Bitmap Index Scan on enterprises_fts_idx (cost=0.00..4869.61
> rows=541014 width=0) (actual time=120.214..120.214 rows=528376 loops=1)"
> " Index Cond: (fts @@ '''activ'''::tsquery)"
> " Buffers: shared hit=1 read=96"
> "Planning time: 2.383 ms"
> "Execution time: 25824.476 ms"
>
> Any advice would be greatly appreciated. I'm running PostgreSQL 9.4.1.
>
The Recheck Cond line is a plan-time piece of info, not a run-time piece.
It only tells you what condition is going to be rechecked if a recheck is
found to be necessary.
It doesn't indicate how many times it was found it to be necessary to do
the recheck. Presumably that number was zero.
Cheers,
Jeff
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Laurent Debacker | 2015-07-24 21:40:37 | Re: bitmap heap scan recheck for gin/fts with no lossy blocks |
| Previous Message | Laurent Debacker | 2015-07-23 16:58:03 | bitmap heap scan recheck for gin/fts with no lossy blocks |