Thread
-
bug in ts_rank_cd
Sushant Sinha <sushant354@gmail.com> — 2010-12-21T13:32:22Z
There is a bug in ts_rank_cd. It does not correctly give rank when the query lexeme is the first one in the tsvector. Example: select ts_rank_cd(to_tsvector('english', 'abc sdd'), plainto_tsquery('english', 'abc')); ts_rank_cd ------------ 0 select ts_rank_cd(to_tsvector('english', 'bcg abc sdd'), plainto_tsquery('english', 'abc')); ts_rank_cd ------------ 0.1 The problem is that the Cover finding algorithm ignores the lexeme at the 0th position, I have attached a patch which fixes it. After the patch the result is fine. select ts_rank_cd(to_tsvector('english', 'abc sdd'), plainto_tsquery( 'english', 'abc')); ts_rank_cd ------------ 0.1