IServerd не может создать DB таблицу --> "... string too big", это нормально ?
Вы скачали IServerd, скомпилировали его, установили и пытаетесь запустить...
Он в свою очередь после запуска пытается разметить базу данных и останавливается с ошибкой.
При этом в логах можно увидеть вот такие строки:
-----------------------------------
Init: Checking DB (users_db) integrity...
Creating new database table: Database query failed (7). Place: [CREATE TABLE]
ERROR: DefineQueryRewrite: rule plan string too big.
RDBMS Reconnection failed. PPs are shuting down...
-----------------------------------
Решение очень простое: вам нужно обновить ваш PostgreSQL сервер до версии 7.x.x.
Старые версии имеют ограничение на длину строки запроса и поэтому выдают ошибку при создании таблицы
users_info_ext, предназначенной для хранения данных о пользователях.
Miranda ICQ отключается от сервера уже через несколько минут и пишет что клиент уже online.
Попробуйте увеличить "V5 ping time" параметр в конфигурационном файле IServerd. Плугин протокола V5
Миранды не берет этот параметр из ответного пакета сервера, а использует свой собственный. Причем в разных
версиях Миранды он различается.
Клиенты v7+ (например icq2k) не работают, хотя icq99 работает нормально. Что делать ?
Проверьте параметр V7 BOS address в конфигурационном файле v7_proto.conf Этот параметр
должен быть адресом и портом вашего сервера. Например:
V7 BOS address = 192.168.1.1:5190
Ошибка при запуске: "Can't create semaphores. Error: [No space left on device]", но
у меня полно места на жестком диске!
Эта ошибка не означает, что у вас закончилось дисковое пространство.
Она означает, что в конфигурации ядра вашей операционной
системы задано недостаточно семафоров. Увеличить их число можно параметрами
ядра SEMMNS и SEMMNI
Как добавить свое поле в таблицу данных о пользователях? Если я добавляю новое поле,
сервер не запускается.
Вместо того, чтобы добавлять новое поле в уже существующую системную таблицу
users_info_ext просто создайте новую таблицу с полем uin и необходимыми вам полями.
Объединять данные из нескольких таблиц можно SQL оператором join.