eJabberd, mod_vcard_odbc, postgresql равно ошибка invalid byte sequence for encoding UTF8 0xf0a2f0be
Привет!
* Есть eJabberd(ejabberd: Installed: 2.1.10-4+deb7u1) сервер с
настроенным хранением юзеров и иных данных в PostgreSQL(postgresql-9.1:
Installed: 9.1.9-1), всё относительно хорошо до тех пор пока не
пытаешься в информации пользователя использовать кириллицу. В общем
сохраняет исключительно латиницу.
* Версия Debian (всё из стандартных репов)
$ cat /etc/debian_version
7.2
* В логах PostgreSQL в таком случае пишет:
2013-12-02 14:54:06 NOVT ERROR: invalid byte sequence for encoding
"UTF8": 0xf0a2f0be
* Настройки eJabberd относительно odbc:
$ grep odbc /etc/ejabberd/ejabberd.cfg
{auth_method, odbc}.
{odbc_server, {pgsql, "192.168.0.1", 5432, "database", "user", "password"}}.
{mod_last_odbc, []},
{mod_offline_odbc, [{access_max_user_messages,
max_user_offline_messages}]},
{mod_privacy_odbc, []},
{mod_private_odbc, []},
{mod_pubsub_odbc, [ % requires mod_caps
{plugins, ["flat_odbc", "hometree_odbc",
"pep_odbc"]} % pep requires mod_caps
{mod_roster_odbc, []},
{mod_vcard_odbc, [{search, true},
Модули postgresql для eJabberd собраны и установлены отсюда
http://svn.process-one.net/ejabberd-modules/pgsql/trunk/
*Создание базы и структуры:
CREATE DATABASE database WITH OWNER = user TEMPLATE = template0 ENCODING
= 'UTF8' LC_COLLATE = 'ru_RU.UTF8' LC_CTYPE = 'ru_RU.UTF8';
$ zcat /usr/share/doc/ejabberd/examples/pg.sql.gz > /tmp/jabber_pg.sql
$ psql -U user -W -f /tmp/jabber_pg.sql database
Подскажите, кто сталкивался, в какую сторону копать, чтобы сохранение
кириллицы в PostgreSQL заработало?
Reply to: