Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Кончается память для процесса / 25 сообщений из 25, страница 1 из 1
14.11.2015, 14:08
    #39103434
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Добрый день!

Недавно, стал наблюдать картину падения сервера FB с сообщением в fiebird.log:

Operating system call _beginthreadex failed. Error code 8

Затем terminated abnormally.

И служба уже не перезапускается автоматически ( поставил Гардиант после первого случая).
Таких эпизодов было уже 2, возникают в конце рабочего дня.

Переход на x64 версию сервера и FB пока не реализуем.

С сервером FB работает только одно приложение.

FB 2.5.4 SS x32, WinServer 2003 r2 (4Gb) памяти.

Может ли быть утечка в приложении?

С уважением, Сергей.
...
Рейтинг: 0 / 0
14.11.2015, 14:25
    #39103445
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВПМожет ли быть утечка в приложении?
Если оно использует левые UDF, то да.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.11.2015, 14:35
    #39103447
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Dimitry SibiryakovСергейВПМожет ли быть утечка в приложении?
Если оно использует левые UDF, то да.

UDF нет.
Это "чудесное" приложение из моего поста http://www.sql.ru/forum/1099277-a/monitoring-kolichestva-konnektov-k-serveru
Только раньше был FB 1.5.6, а сейчас по рекомендации разработчиков был установлен 2.5.4.
И это БЕЗ КОНВЕРТАЦИИ метаданных. Т.е. теперь БД с ODS FB 1.5.6 просто работает под FB 2.5.4, зато они себе галочку поставили, что перевели на другую версию сервера. ужос. Но мы люди подневольные).
Но это так, отвлечение.
База то небольшая - 400-500 Мб, на что еще обратить внимание?
...
Рейтинг: 0 / 0
14.11.2015, 14:51
    #39103453
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВПтеперь БД с ODS FB 1.5.6 просто работает под FB 2.5.4
И ведь к таблицам мониторинга при таком дерьмовом раскладе не пошлёшь...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.11.2015, 14:55
    #39103457
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Dimitry SibiryakovСергейВПтеперь БД с ODS FB 1.5.6 просто работает под FB 2.5.4
И ведь к таблицам мониторинга при таком дерьмовом раскладе не пошлёшь...

Совершенно верно.

На тестовой машине я делал backup/restore в fb 2.5.4 - на удивление прошел без ошибок (restore), есть подозрение, что обновление метаданных проводить нет необходимости в моем случае.
...
Рейтинг: 0 / 0
14.11.2015, 17:41
    #39103559
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Объясню, почему думаю про утечку памяти через приложение.

приложение в своей работе взаимодействует с dbf Файлами. Взаимодействует через ADO.
А так как, у microsoft есть ограничение на количество ADO соединений,
при наличии на компьютере установленного BDE - 1 соединение, то другие программы,
использующие dbf работать не могут - при обращении к dbf возникает ошибка драйвера.
Раньше пользователи поработав в "чудесном" приложении закрывали его, чтобы работать
в другом.
У microsof я нашел решение с внесением изменений в реестр, которое позволяет обходить
данное ограничение. Теперь пользователям не надо закрывать одно приложение, чтобы работать в другом.

т.е. длительность работы в "чудесном" приложении увеличилась.

поэтому, может рост коннектов к БД и вызывает рост потребляемой памяти и как следствие превышение 2Гб?
...
Рейтинг: 0 / 0
14.11.2015, 17:52
    #39103564
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВПпоэтому, может рост коннектов к БД и вызывает рост потребляемой памяти и
как следствие превышение 2Гб?
У тебя не стартует поток. Значит, скорее всего, вычерпался лимит на стэк. Количество
коннектов может вычерпать этот лимит только если сервер использует отдельный поток на
каждый коннект. А это происходит только в случае WNET или XNET коннектов (точно не помню).
Если ты прав, то переход на TCP и localhost может решить проблему.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.11.2015, 18:01
    #39103567
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Dimitry Sibiryakov
Если ты прав, то переход на TCP и localhost может решить проблему.


В настроечном файле приложения указываю путь к БД в виде "IP-адрес:путь к БД".
Или это внутри приложения дополнительно определяется тип коннекта?
...
Рейтинг: 0 / 0
14.11.2015, 18:22
    #39103579
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Ах да, ты же в том топике говорил, что у тебя TCP. Значит этот вариант отпадает.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.11.2015, 19:20
    #39103597
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВП,

раз мониторинг недоступен, то остаётся трейс. Я бы искал незакрытые запросы, тр-ции и коннекты.
...
Рейтинг: 0 / 0
14.11.2015, 19:47
    #39103603
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
hvladСергейВП,

раз мониторинг недоступен, то остаётся трейс. Я бы искал незакрытые запросы, тр-ции и коннекты.

Да собственно этим и займусь с понедельника. Буду мониторить незакрытые коннекты.
...
Рейтинг: 0 / 0
16.11.2015, 21:37
    #39105000
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Приветствую.
Вот результаты мониторинга количества коннектов к серверу и объемов потребляемой памяти + виртуальной.

Видно, что при относительно постоянном количестве коннектов объем используемой FB памяти увеличивается.
Что можно сказать о причинах?
...
Рейтинг: 0 / 0
16.11.2015, 21:37
    #39105002
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Память
...
Рейтинг: 0 / 0
16.11.2015, 22:03
    #39105010
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВППриветствую.
Вот результаты мониторинга количества коннектов к серверу и объемов потребляемой памяти + виртуальной.

Видно, что при относительно постоянном количестве коннектов объем используемой FB памяти увеличивается.
Что можно сказать о причинах?

по графику в принципе ничего сказать невозможно
...
Рейтинг: 0 / 0
16.11.2015, 22:11
    #39105012
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВП,

Кстати из графиков всё же видно, что память не всё время увеличивается. Есть момент когда память резко упала. Вот и ищи что тогда произошло. Может натолкнёт на мысль.

Я бы ещё проследил за количеством активных транзакций, открытых курсоров и отпрепарированных запросов. Правда без мониторинга это сделать затруднительно.
...
Рейтинг: 0 / 0
16.11.2015, 22:33
    #39105026
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Симонов Денис
по графику в принципе ничего сказать невозможно

А разве рост постоянный потребляемой памяти сервером при условии, что программа не закрывается это нормально?

Симонов Денис Есть момент когда память резко упала. Вот и ищи что тогда произошло. Может натолкнёт на мысль.

Причина в том, что один или несколько пользователей закрыли программу.
...
Рейтинг: 0 / 0
16.11.2015, 23:08
    #39105044
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВП,

значит пока программа работает что-то не закрывается. Может быть количество открытых курсоров, активных транзакций, препарированных запросов и т.д. постоянно растёт.
...
Рейтинг: 0 / 0
17.11.2015, 11:58
    #39105383
Arioch
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
или блобы в r/o транзакциях...

или GTT

или сильно рекурсивные SP...
...
Рейтинг: 0 / 0
17.11.2015, 12:13
    #39105404
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Arioch,

а я бы поставил на исчерпание ресурсов (хэндлов) на винде. Я понимаю, что при использовании SS, который только 2 гига может сожрать, его можно вполне поставить на винду с 4гиг оперативной памяти, но ...
Фиг знает, что там еще за софт установлен.
В общем, ProcessExplorer в руки, и смотреть.

p.s. однако, я наблюдал случай, когда приложение не закрывало хэндлы транзакций, транзакции стартовало часто, и часа через 3 работы выдавало ошибку про нехватку ресурсов. Но в этом случае ресурсы кончались на десктопе с приложением, а не на сервере.
...
Рейтинг: 0 / 0
17.11.2015, 13:15
    #39105482
_СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Ariochили блобы в r/o транзакциях...

или GTT

или сильно рекурсивные SP...

SP точно нет, точнее одна!, но запускается 2 раза в сутки, отрабатывает быстро.

Блобы точно есть.
Сегодня полет нормальный - за пределы 800 мегабайт потребление памяти не выходит.
...
Рейтинг: 0 / 0
17.11.2015, 13:17
    #39105484
_СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
kdvArioch,

а я бы поставил на исчерпание ресурсов (хэндлов) на винде.

В этом случае "падал" бы сам сервер?
...
Рейтинг: 0 / 0
17.11.2015, 13:20
    #39105486
Зимаргл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
kdvArioch,

а я бы поставил на исчерпание ресурсов (хэндлов) на винде. Я понимаю, что при использовании SS, который только 2 гига может сожрать, его можно вполне поставить на винду с 4гиг оперативной памяти, но ...
Фиг знает, что там еще за софт установлен.
В общем, ProcessExplorer в руки, и смотреть.

p.s. однако, я наблюдал случай, когда приложение не закрывало хэндлы транзакций, транзакции стартовало часто, и часа через 3 работы выдавало ошибку про нехватку ресурсов. Но в этом случае ресурсы кончались на десктопе с приложением, а не на сервере.
Можно же в диспетчере задач или перфмоне посмотреть и хендлы и счетчики потоков и ресурсы ГДИ. А не гадать "утекает не утекает"
...
Рейтинг: 0 / 0
17.11.2015, 13:46
    #39105538
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Зимаргл,

я же написал
kdvВ общем, ProcessExplorer в руки, и смотреть.
можно, конечно, и диспетчером задач.
...
Рейтинг: 0 / 0
18.11.2015, 19:22
    #39107149
СергейВП
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
Пока мне видится только одно решение:
Мониторить потребляемую память и при достижении, например, 1.8Гб отправлять по электронной почте информацию о необходимости срочно все выйти из приложения и заново зайти.

Чтобы не изобретать велосипед - не подскажите ли существующие утилиты для мониторинга памяти с возможностью отправки информации по электронной почте?
...
Рейтинг: 0 / 0
18.11.2015, 21:45
    #39107218
Таблоид
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Кончается память для процесса
СергейВПне подскажите ли существующие утилиты для мониторинга памяти с возможностью отправки информации по электронной почте? http://ib-aid.com/en/fbdataguard/
Не знаю, мониторит ли он память, но в мыльце репорты - точно шлёт )
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Кончается память для процесса / 25 сообщений из 25, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]