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 @@
> 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 ?
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