Страница 1 из 1

Падение FB 1.5.3 CS на второй день работы (SS не падал)

Добавлено: 20 мар 2007, 10:31
NMX
Добрый день.

Windows 2000 1 процессор.

падение Firebird 1.5.3.4870 CS на второй день непрерывной
работы после замены SS на CS.

SS той-же версии работал без сбоев.

Приблизительно 1000 транзакций в день. Рзмер базы ококло 2Г
Пишушие транзакции короткие (1-2 сек). Читающие клиентские длинные, откряты целый рабочий день.

Одна читающая траназакция из сервиса на серевере открыта постоянно (24x7) , по таймеру раз в секунду проверят данные для асинхронной обработки, и исли они есть запускает, пишущую танзакцию от секунды до нескольких минут, в зависимости от объема накопленных данных .

на второй день работы у клентов пошли обрявы соединения с сервером:
"Удаленный хост принудительно разорвал ..."

в firebird.log:

5 раз
NMX (Client) Fri Mar 16 15:36:36 2007 INET/inet_error: send errno = 10054

потом 1 раз
NMX (Client) Fri Mar 16 15:36:36 2007 REMOTE INTERFACE/gds__detach: Unsuccesful detach from database. ncommitted work may have been lost

и 1 раз
NMX (Client) Fri Mar 16 15:36:36 2007 INET/inet_error: send errno = 10054



в логе DrWtsn:

:::::::::::::для 9-и процессов fb_inet_server..exe:::::::::::::::::::::::::::::::::::::::::::::::::
Исключение в приложении:
Номер: c00000fd (переполнение стека)
............
функция: WaitForSingleObjectEx
7945a013 8bf8 mov edi,eax
.......................
7945a02d 57 push edi
СБОЙ -> 7945a02e ffd6 call esi
7945a030 85c0 test eax,eax
.......................
7945a048 50 push eax
*----> Обратная трассировка стека <----*

:::::::::::::для 10-го прооцесса fb_inet_server..exe:::::::::::::::::::::::::::::::::::::::::::::::::

Исключение в приложении:
Номер: c00000fd (переполнение стека)
...........
функция: WaitForSingleObjectEx
7945a002 7511 jnz GetBinaryTypeW+0x244 (7945f715)
........
7945a01b 50 push eax
СБОЙ -> 7945a01c e8f2e8ffff call ProcessIdToSessionId+0x107 (79458913)
7945a021 8b3504124379 mov esi,[79431204] ds:79431204=77f88f08
..........
7945a03a 3d01010000 cmp eax,0x101
*----> Обратная трассировка стека <----*

C сетью все в порядке, процесс, к которому идет подключение по localhost упал тоже.

Не та-ли, эта ошибка с длинными read-only транзакциями, что испрвлена в 1.5.4

Если не та, то что делать?

Re: Падение FB 1.5.3 CS на второй день работы (SS не падал)

Добавлено: 20 мар 2007, 13:26
hvlad
NMX писал(а):Не та-ли, эта ошибка с длинными read-only транзакциями, что испрвлена в 1.5.4
Возможно
NMX писал(а):Если не та, то что делать?
Обновиться до 1.5.4 в любом случае
Скачать .pdb и распаковать в bin
Показать не куски из лога ватсона, а лог целиком

Добавлено: 20 мар 2007, 14:35
NMX
полные логи тут:
drWtsn.zip
firebird.zip

в настоящий момент откачено на SS

fbserver.pdb и fbclient.pdb в bin-е 1.5.3 лежат

может быть возможны какие-то кометарии до установки CS 1.5.4
это рабочая база клиета, и в экспирементых мы ограничены.
На наших машинах нагрузки нет и все работате...

преход CS начат в связи с предполагаемым переходом на 2-х процесорный сервер.

Добавлено: 20 мар 2007, 14:58
hvlad
Такой трассы стека я ещё не видел.

Странные моменты :
а) всё время написано fb_inet_server..exe - с двумя точками, хотя остальные процессы выглядят нормально

б) сбой в WaitForSingleObjectEx и упоминание в трассе рядом TransmitCommChar и SetCommState - это вообще из области фантастики

Свои УДФ есть ? Антивирусы, файрволлы есть ? NOD, например, с классиком очень не дружит

PS zip'ом научить пользоваться ? У меня трафик не казённый

Добавлено: 20 мар 2007, 15:21
NMX
своя udf: udf.zip
используются freeUDF, для выделения памяти - ib_util_malloc

приложение - учетная система - очень "тяжелый сервер" -
select count(*) from RDB$procedures = 2196
select count(*) from RDB$triggers = 1073
event -ы используются

firewall или антивируса на серевере нет

zip - ok

Добавлено: 20 мар 2007, 15:55
kdv
а где в udf ISMultiThread:=True?
хотя по идее, это может влиять на супере, а на классике - без разницы...

Добавлено: 20 мар 2007, 16:06
NMX
kdv писал(а):а где в udf ISMultiThread:=True?
... а на классике - без разницы...
спасибо, поставим, но похоже это на CS это не поможет, в UDF не используются глобальные переменные, возрат через FREE_IT ...