I have problems with queries over tsearch index. I have a table of books, with 1200000 registers. I have created an GIST index over the title and subtitle,
CREATE INDEX "idxts2_titsub_idx" ON "public"."libros" USING gist ("idxts2_titsub"); My problems started when i execute my queries. For example, i execute a simple query like this one: explain analyze SELECT isbn, titulo FROM libros WHERE idxts2_titsub @@ to_tsquery('default_spanish', to_ascii('sevilla')) ORDER BY titulo LIMIT 10; This query take more than 10 secods, and i think this is too much for such an easy query. Every night, i execute a VACUUM ANALYZE over my data base. The query plan of this query, is the next one: QUERY PLAN Limit (cost=4725.18..4725.20 rows=10 width=56) (actual time= 17060.826..17061.078 rows=10 loops=1) -> Sort (cost=4725.18..4728.23 rows=1223 width=56) (actual time= 17060.806..17060.874 rows=10 loops=1) Sort Key: titulo -> Bitmap Heap Scan on libros (cost=45.28..4662.46 rows=1223 width=56) (actual time=10831.530..16957.667 rows=2542 loops=1) Filter: (idxts2_titsub @@ '''sevilla'''::tsquery) -> Bitmap Index Scan on idxts2_titsub_idx (cost=0.00..45.28rows=1223 width=0) (actual time= 10830.051..10830.051 rows=2586 loops=1) Index Cond: (idxts2_titsub @@ '''sevilla'''::tsquery) Total runtime: 17062.665 ms I have no idea what is happening. Why the Bitmap Index Scan and the Bitmap Heap Scan cost so much time? I have a 2GB RAM memory Server. Thanks every body for your healp and sorry for my English