SQL.RU
 client/server technologies
 
 Главная | Документация | Статьи | Книги | Форум | Опросы | Рассылка | Работа | Поиск | FAQ |

Добро пожаловать в форум, Guest  >>  Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PostgreSQL Новый топик  Ответить
 tsearch2 и кодировка   [new]
Давид Мзареулян
Member

Откуда:
Сообщений: 13
Версия базы 8.3.1, кодировка — utf-8, кластер создан в нужной локали, и всё работает как надо. Пробую работать с tsearch2.

В конфиге “default_text_search_config = 'pg_catalog.russian'”, в /usr/local/share/postgresql/tsearch_data лежат russian.dict, russian.affix и пр. — всё в utf-8.

получаю следующую ошибку:

SELECT to_tsvector('russian', 'вася');
ERROR: invalid byte sequence for encoding "UTF8": 0xd1

Это НЕ проблема с кодировкой моего терминала, поскольку при этом 'english' работает как надо:

SELECT to_tsvector('english', 'вася');
to_tsvector
-------------
'вася':1

В чём может быть дело?
10 май 08, 17:38    [5646583] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Давид Мзареулян
Member

Откуда:
Сообщений: 13
Нашёл обсуждение такой же проблемы в этом форуме: http://www.sql.ru/forum/actualthread.aspx?tid=533085. Вообще кто-нибудь смог завести tsearch2 под freebsd на utf-8?

Насколько я смог локализовать ошибку, она вылезает только из сишных процедур модуля tsearch2. И проблема явно именно в tsearch2, потому что вся остальная база на utf-8 давно и прекрасно работает.
10 май 08, 20:10    [5646756] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Dan Black
Member

Откуда:
Сообщений: 428
Небольшой оффтоп, но для личного интереса.
Почему Вы используете PostgreSQL под FreeBSD? (слуйчайно так получилось, давно работаете под этой ОС, ограничения ТЗ, другой вариант?)
----------------------------
Verba volent, scripta manent
11 май 08, 02:37    [5647220] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
g100m
Member

Откуда: Волгоград
Сообщений: 6
Да, есть такая проблема.
И именно с 8.1.3 и именно на FreeBSD 6.2
Как вариант - мигрировать на 6.3 с ней, вроде бы, таких проблем нет

Непонятно почему, но разработчики говорят что перенос tsearch в ядро постгреса происходил именно на этой версии OS :)
12 май 08, 18:34    [5652590] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
g100m
Member

Откуда: Волгоград
Сообщений: 6
Dan Black
Небольшой оффтоп, но для личного интереса.
Почему Вы используете PostgreSQL под FreeBSD? (слуйчайно так получилось, давно работаете под этой ОС, ограничения ТЗ, другой вариант?)


На малых проектах под БД выделять собственный сервер достаточно накладно, а вот линукс в качесве web-сервера мало кто использует...
12 май 08, 18:35    [5652598] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Dan Black
Member

Откуда:
Сообщений: 428
g100m
а вот линукс в качесве web-сервера мало кто использует...
могу узнать, откуда такая статистика?
12 май 08, 19:18    [5652790] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
g100m
Member

Откуда: Волгоград
Сообщений: 6
Dan Black
g100m
а вот линукс в качесве web-сервера мало кто использует...
могу узнать, откуда такая статистика?

Это не холивар )

Из тех, с кем предпочитаю работать.
Шаговая доступность, вменяемость профессионала
12 май 08, 22:32    [5653142] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Давид Мзареулян
Member

Откуда:
Сообщений: 13
g100m
Да, есть такая проблема.
И именно с 8.1.3 и именно на FreeBSD 6.2
Как вариант - мигрировать на 6.3 с ней, вроде бы, таких проблем нет

Непонятно почему, но разработчики говорят что перенос tsearch в ядро постгреса происходил именно на этой версии OS :)

А можно ссылку на какую-то подтверждённую информацию об этой проблеме с 6.2?

Я сейчас переписываюсь с Фёдором Сигаевым, проблема слегка локализовалась, но пока не решилась. Но он что-то не упоминал о каких-то траблах именно с 6.2. Обновиться-то не сложно…

g100m
Небольшой оффтоп, но для личного интереса.

Это достаточно большой оффтоп.
12 май 08, 23:53    [5653339] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Noldor
Member

Откуда:
Сообщений: 3
А другие функции с русским нормально работают с utf8?
У меня похожие проблемы во freebsd. http://sql.ru/forum/actualthread.aspx?tid=551148
17 май 08, 13:55    [5677386] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
DAISER
Member

Откуда: Челябинск
Сообщений: 50
Давид Мзареулян
Я сейчас переписываюсь с Фёдором Сигаевым, проблема слегка локализовалась, но пока не решилась. Но он что-то не упоминал о каких-то траблах именно с 6.2. Обновиться-то не сложно…

А что тут решать? В FreeBSD 6.2 кривая локаль ru_RU.UTF-8. Можно, как я понял, почитав www.lexa.ru, собственную локаль сделать, но, имхо, оно того не стоит. До 6.3 фрю обновлять не стал, перебрался на Debian 4.0 r2. Всё ништяк работает.
25 май 08, 09:49    [5711451] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
Давид Мзареулян
Member

Откуда:
Сообщений: 13
DAISER
Давид Мзареулян
Я сейчас переписываюсь с Фёдором Сигаевым, проблема слегка локализовалась, но пока не решилась. Но он что-то не упоминал о каких-то траблах именно с 6.2. Обновиться-то не сложно…

А что тут решать? В FreeBSD 6.2 кривая локаль ru_RU.UTF-8. Можно, как я понял, почитав www.lexa.ru, собственную локаль сделать, но, имхо, оно того не стоит. До 6.3 фрю обновлять не стал, перебрался на Debian 4.0 r2. Всё ништяк работает.

Вы смешали в одну кучу совершенно разные вещи. Во-первых, локаль «кривая» не на 6.2, а на всех версиях, включая семёрку. Во-вторых, в данном конкретном случае локаль совершенно не при чём.

В данном конкретном случае проблема вылезает при использовании файла стоп-слов, причём только (!) когда в этом файле встречается русская буква «х» (в этом есть какой-то глубокий символизм). К сожалению, на этом наша переписка с Фёдором пока заглохла…
25 май 08, 12:48    [5711611] Ответить | Цитировать    Сообщить модератору

 Re: tsearch2 и кодировка   [new]
DAISER
Member

Откуда: Челябинск
Сообщений: 50
Давид Мзареулян
В данном конкретном случае проблема вылезает при использовании файла стоп-слов, причём только (!) когда в этом файле встречается русская буква «х» (в этом есть какой-то глубокий символизм). К сожалению, на этом наша переписка с Фёдором пока заглохла…

Буквы, прошу прощения, "х" у меня не было :-). Но и с другими буквами не работало. В дебри действительно не лазил.
25 май 08, 17:49    [5712171] Ответить | Цитировать    Сообщить модератору

Все форумы / PostgreSQL Ответить
Generated time: 125ms.
Rambler's Top100 Powered by ActualForum 1.5.3 [s1] Copyright (c) Alex Sibilev 2000-2010