SeqScan with full text search - Mailing list pgsql-performance

From Tomek Walkuski
Subject SeqScan with full text search
Date
Msg-id 5afd048c-19e2-4a81-8439-bc09839d29dc@n5g2000vbf.googlegroups.com
Whole thread Raw
Responses Re: SeqScan with full text search  (Tomas Vondra <tv@fuzzy.cz>)
Re: SeqScan with full text search  (Merlin Moncure <mmoncure@gmail.com>)
Re: SeqScan with full text search  (Віталій Тимчишин <tivv00@gmail.com>)
List pgsql-performance
Hello group!

I have query like this:

SELECT
  employments.candidate_id AS candidate_id,
  SUM(TS_RANK(employers.search_vector, TO_TSQUERY('simple', 'One:* |
Two:* | Three:* | Four:*'), 2)) AS ts_rank
FROM
  employments
INNER JOIN
  employers ON employments.employer_id = employers.id
AND
  employers.search_vector @@ TO_TSQUERY('simple', 'One:* | Two:* |
Three:* | Four:*')
GROUP BY
  candidate_id;

And it results with this:

http://explain.depesz.com/s/jLM

The JOIN between employments and employers is the culprit. I'm unable
to get rid of the seq scan, and setting enable_seqscan to off makes
things even worse.

Is there any way to get rid of this JOIN?

What info should I post to debug this easier?

Thanks!

pgsql-performance by date:

Previous
From: Eyal Wilde
Date:
Subject: Re: scale up (postgresql vs mssql)
Next
From: Andy Colson
Date:
Subject: Re: scale up (postgresql vs mssql)