Thread: problem with tsearch and utf-8 on postgresql 8.1

problem with tsearch and utf-8 on postgresql 8.1

From
Ottavio Campana
Date:
I created a database with locale it_IT@UTF-8, and I'm facing a weird
problem with tsearch. Let me show it:

tmptest=# SELECT * from pg_ts_cfg;
      ts_name     | prs_name |    locale
-----------------+----------+--------------
  default_russian | default  | ru_RU.KOI8-R
  simple          | default  |
  default         | default  | it_IT@UTF-8
(3 righe)

tmptest=# SELECT to_tsvector ('ciao mamma');
ERROR:  could not find tsearch config by locale
tmptest=# UPDATE pg_ts_cfg set locale = 'it_IT@euro' where ts_name =
'default';
UPDATE 1
tmptest=# SELECT to_tsvector ('ciao mamma');
     to_tsvector
--------------------
  'ciao':1 'mamma':2
(1 riga)

tmptest=# UPDATE pg_ts_cfg set locale = 'it_IT@UTF-8' where ts_name =
'default';
UPDATE 1
tmptest=# SELECT to_tsvector ('ciao mamma');
     to_tsvector
--------------------
  'ciao':1 'mamma':2
(1 riga)

tmptest=# \q

So at first tsearch does not work. If I change it to it_IT@euro it works
and if I switch back to it_IT@UTF-8 it then works even with that locale.
I cannot understand the reason why it happens. By disconnecting from the
db and connecting again the problem is still there. Do you have any idea
why it happens?

I don't know if it matters, on the systems I have LANG="it_IT@euro" and
  LANGUAGE="it_IT"

Thanks,

Ottavio

PS: Im running a backport of postgresql 8.1 on debian sarge.

--
Non c'e' piu' forza nella normalita', c'e' solo monotonia.


Attachment

Re: problem with tsearch and utf-8 on postgresql 8.1

From
"Pavel Stehule"
Date:
Hello

UTF8 is supported from 8.2 version

Regards
Pavel Stehule

On 17/04/2008, Ottavio Campana <ottavio@campana.vi.it> wrote:
> I created a database with locale it_IT@UTF-8, and I'm facing a weird problem
> with tsearch. Let me show it:
>
>  tmptest=# SELECT * from pg_ts_cfg;
>      ts_name     | prs_name |    locale
>  -----------------+----------+--------------
>   default_russian | default  | ru_RU.KOI8-R
>   simple          | default  |
>   default         | default  | it_IT@UTF-8
>  (3 righe)
>
>  tmptest=# SELECT to_tsvector ('ciao mamma');
>  ERROR:  could not find tsearch config by locale
>  tmptest=# UPDATE pg_ts_cfg set locale = 'it_IT@euro' where ts_name =
> 'default';
>  UPDATE 1
>  tmptest=# SELECT to_tsvector ('ciao mamma');
>     to_tsvector
>  --------------------
>   'ciao':1 'mamma':2
>  (1 riga)
>
>  tmptest=# UPDATE pg_ts_cfg set locale = 'it_IT@UTF-8' where ts_name =
> 'default';
>  UPDATE 1
>  tmptest=# SELECT to_tsvector ('ciao mamma');
>     to_tsvector
>  --------------------
>   'ciao':1 'mamma':2
>  (1 riga)
>
>  tmptest=# \q
>
>  So at first tsearch does not work. If I change it to it_IT@euro it works
> and if I switch back to it_IT@UTF-8 it then works even with that locale.
>  I cannot understand the reason why it happens. By disconnecting from the db
> and connecting again the problem is still there. Do you have any idea why it
> happens?
>
>  I don't know if it matters, on the systems I have LANG="it_IT@euro" and
> LANGUAGE="it_IT"
>
>  Thanks,
>
>  Ottavio
>
>  PS: Im running a backport of postgresql 8.1 on debian sarge.
>
>  --
>  Non c'e' piu' forza nella normalita', c'e' solo monotonia.
>
>
>