On Mon, Sep 19, 2016 at 5:10 AM, Kiran <bangalore.ki...@gmail.com> wrote:

> Dear All,
>
> I have a table called question which has a ts_vector column *weighted_tsv*
> .
> I have gin indexed the weighted_tsv column.
>
> When I query using the following
>
> EXPLAIN ANALYZE select * from question where weighted_tsv @@
> to_tsquery('Hur&ofta');
>
> I get the following output
>
> "Bitmap Heap Scan on question  (cost=12.33..25.38 rows=10 width=731)
> (actual time=0.058..0.062 rows=3 loops=1)"
> "  Recheck Cond: (weighted_tsv @@ to_tsquery('Hur&ofta'::text))"
> "  Heap Blocks: exact=3"
> "  ->  Bitmap Index Scan on weighted_tsv_question_idx  (cost=0.00..12.33
> rows=10 width=0) (actual time=0.052..0.052 rows=3 loops=1)"
> "        Index Cond: (weighted_tsv @@ to_tsquery('Hur&ofta'::text))"
> "Planning time: 0.205 ms"
> "Execution time: 0.104 ms"
>
>
> Why the query is using the Bitmap ? Not the Index scan ?
>

Gin indexes do not support non-bitmap index scans, only bitmap index scans.


> Also to_tsquery is casting to ::text. Is this normal ?
>

Yes.

It is pointless to test performance against a table with 10 rows.  If your
table will soon have a few thousand rows, then either wait until it does,
or create a test server and fabricate a few thousand rows worth of test
data.

Cheers,

Jeff

Reply via email to