Hello,

 I am using PostgreSQL 8.4 full text search in following way:
 Custom FTS configuration called "dc2" with these dictionaries in
following order for asciihword token: latvian_ispell, english_stem,
russian_stem

 Latvian ispell dictionary contains words with different endings but
same meaning (latvian langiage specifics, plural words, etc)

 The problem starts when using wildcard :* to_tsquery syntax.

 For example. If i look for the word "kriev" i am automatically adding
wildcard using syntax:  to_tsquery('dc2', 'kriev:*');
 By searching kriev:* FTS founds word "krievs" in latvian_ispell
dictionary which is totally okei.

 SELECT * from ts_debug('dc2', 'kriev:*');
   alias   |   description   | token |
dictionaries                       |   dictionary   | lexemes
-----------+-----------------+-------+----------------------------------------------------------+----------------+----------
 asciiword | Word, all ASCII | kriev |
{latvian_ispell,english_stem,russian_stem} | latvian_ispell | {krievs}
 blank     | Space symbols   | :*    | {}


If understand correctly now database uses not kriev:* but krievs:* for
following queries.
And here is the problem, data contains also word: Krievija, and in
this case search doesn't find it, because it looks for Krievs:* and
not Kriev:* anymore.

Is there any solution anone could suggest to get results by both
criterias - kriev:* (starting query) and krievs:* (founded in ispell
dict).
Only idea i had is to somehow combine two tsqueries one -
to_tsquery('dc2', 'kriev:*') and to_tsquery('english', 'kriev:*'); so
the search looks for both - kriev:* and krievs:* but anyway didnt
figured out any syntax i could use :(

Thanks

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to