Ирбис64 2009.1 ,При входе в АРМ Каталогизатор выскакивает сообщение
ERROR!
-1112 NumCommand=50 server=19226 client=11057
нажимаю ОК потом все нормально работает,и иногда та же ошибка после набора при старте "Имя пользователя" и "Логин" и при переходе на другую БД в каталогизаторе
Буду неимоверно благодарен.
Это может происходить при работе на одной машине, т.е. когда и сервер и клиент работают на одной машине - в этом случае необходимо в irbis_server.ini установить параметр
TimeSleepOnClose=1
Здравствуйте, Александр Иосифович.
У нас такая же проблема, причем не только при открытии АРМа Каталогизатор, при работе на сетевых машинах (2009.1 от декабря). Перечислю, когда появляются такие ошибки (практически постоянно):
- из АРМ "Комплектатор" переходим в АРМ "Каталогизатор",
- в АРМ "Каталогизатор" заполняем поле "Фотография читателя" и нажимаем Сохранить (при этом фотография может загрузиться в окне полного биб. описания только наполовину).
- На чит.билете у нас три картинки, включая фотографию. Так, если нажать "Сервис-обновить контекст" - подобное сообщение появляется три раза - после нажатия ОК загружается по одной картинке :S
- в АРМ "Книговыдача" выполняем статистику посещений и книговыдач.
Не надо перечислять ситуации, когда это происходит (это не имеет смысла)
Уточните следующее:
- Это происходит при реальной работе, когда клиент на одной машине, а сервер ИРБИС - на другой?
- Дата создания сервера ИРБИС (irbis_server.exe)
- Покажите содержание irbis_server.ini
Михайленко Илья написал(а):
-------------------------------------------------------
> А в рамках одного сервера (когда клиент и сервер
> на одной и той же машине) такие проблемы есть? Или
> это проявляется исключительно при работе в сети?
Да, в локальной версии тоже, но наверное реже (или же в локальной мы меньше работаем :).
Кстати, пользователям поставила Ирбис32 версии 2009.1, сразу после установки АРМ "Каталогизатор" выдал "Grid index of range". Повторается ли это сообщение еще, не знаю, не звонили...
> Кстати, пользователям поставила Ирбис32 версии
> 2009.1, сразу после установки АРМ "Каталогизатор"
> выдал "Grid index of range". Повторается ли это
> сообщение еще, не знаю, не звонили...
А это Вы брали?
[irbis.gpntb.ru]
Милана А. написал(а):
-------------------------------------------------------
> Здравствуйте, Александр Иосифович.
> Сегодня скопировала екзешники клиентов от
> 29012009, и вроде как ошибка перестала появляться
> :)
Обновление исполняемых модулей тут абсолютно ни при чем...
Весь вопрос - идет ли работа на ОДНОЙ машине (сервер и клиент на одном компьютере) или нет...
Здравствуйте, Александр Иосифович.
У нас работа идет в сети (сервер и клиент на разных машинах).
Сегодня клиенты позвонили и тоже пожаловались на эту же ошибку. Пойду, поставлю все обновления, посмотрю :) . У них клиент и сервер на одной машине.
А разве у вас Сервер стоит не на одной машине, а на нескольких? Вы пишите "У них клиент и сервер на одной машине" - значит они подключаются не к вашему серверу, стоящему на отдельной машине, а к серверу на своей собственной машине? Они ведут какой-то автономный участок?
Тоже наблюдали ошибку -1112. Пока нет возможности прикрепить ini из той инсталляции, где наблюдали ошибку. (Клиенты и сервер на одном и том же компьютере, TimeSleepOnClose=1. Версия 2009.1.)
Могут ли помочь в данной ситуации настройки TimeSleepOnClose=2 ?
Вопрос: были ли существенные изменения программного кода irbis_server.exe версии 2009.1 после 23.07.2009 г.?
Редактировано 3 раз. Последний раз 08.02.2010 14:42 пользователем PRM.
Gena написал(а):
-------------------------------------------------------
> А разве у вас Сервер стоит не на одной машине, а
> на нескольких? Вы пишите "У них клиент и сервер на
> одной машине" - значит они подключаются не к
> вашему серверу, стоящему на отдельной машине, а к
> серверу на своей собственной машине? Они ведут
> какой-то автономный участок?
Я имела ввиду, что мы - дилеры, а клиенты - другие библиотеки.
Возможно, ошибка была связана с irbis64.dll, и перестала возникать после обновления этого файла?
Возможно Ваши клиент установили и Серверную, и Клиентскую часть Ирбиса на одну машину. На счет связи проблемы с ДЛЛ не могу ничего сказать, по этому вопросу надо ждать ответ разработчиков
С точки зрения клиента ошибка заключается в том, что клиент получает в ответ не весь сетевой пакет. Длина пакета контролируется сравнением длины полученного пакета и длины, указанной в заголовке пакета. При несовпадении этих значений и выдается сообщение об ошибке -1112.
Есть две причины для появления этого сообщения.
1.
Ошибка -1112 проявляется на быстрых серверах, когда клиент и сервер находятся на одной и той же машине. Реже когда на разных, в рамках хорошей сети и быстрого сервера. Связана с ошибкой логики работы сетевого компонента Delphi, поэтому задачу решить быстро не получается. Сервер закрывает соединение ДО отправки всех данных клиенту.
TimeSleepOnClose=2 не поможет, только отсрочит на 2 мс ее появление. (Сам этот параметр - попытка принудительно задержать закрытие сокета до отправки всех данных, решить проблему быстро и "малой кровью")
Ошибка не частая и проявляется в основном при установке клиента и сервера в рамках одного физического, быстрого, не особо нагруженного сервера. Реализация исправления в работе, но быстрого решения не обещаем - приходится переписывать весь компонент и значительную часть кода сервера, делать это осторожно и проверять результаты, дабы не наплодить еще больше ошибок.
При работе в рамках ЛВС (т.е. когда сервер и клиент - физически разные машины) встречается очень редко.
Более частое ее проявление в рамках сетевой работы означает, что срабатывает причина №2: от клиента до сервера доходят не все tcp-пакеты (теряются), т.е. проблема в надежности самой сети. Проверяется пингом с достаточно большим количеством запросов. Наличие пропуска пинга - прямое указание на сетевые корни этой проблемы, которая не зависят от ИРБИСа.
Да, есть - в 2010.1.
Но и в версии 2009.1 (D4 - появится в ближайшее время) эту проблему можно решить - если для клиентов, у которых фиксируется эта ошибка, в их профилях в секции [MAIN] установить параметр
BlockSocket=1
Михайленко Илья написал(а):
-------------------------------------------------------
> TimeSleepOnClose=2 не поможет, только отсрочит на
> 2 мс ее появление.
> ...
> Реализация исправления в работе, но
> быстрого решения не обещаем - приходится
> переписывать весь компонент и значительную часть
> кода сервера…
…
Alio написал(а):
-------------------------------------------------------
> Да, есть - в 2010.1.
> Но и в версии 2009.1 (D4 - появится в ближайшее
> время) эту проблему можно решить - если для
> клиентов, у которых фиксируется эта ошибка, в их
> профилях в секции установить параметр
> BlockSocket=1
Спасибо!
---
Изменения в сообщении от 19.04.2010 г.
Вопрос об "Ошибке при регистрации" перенёс в отдельную тему.
Редактировано 1 раз. Последний раз 19.04.2010 10:26 пользователем PRM.