![]() |
|
Модераторы: xvr |
![]()
|
|
| Shutdown |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.8.2008 Репутация: нет Всего: нет |
Есть некоторый сервер под FreeBSD 7.0, обрабатывающий параллельные запросы в потоках. Замечено, что он периодически подвисает и при этом загрузка проца зашкаливает (100 и более). Kill -11 и последующий анализ в gdb показал что проблема в генерации исключений. Написал тестовый скрипт, который просто создает пул потоков, которые в свою очередь генерят и ловят исключения. Когда потоков достаточно много (порядка 100-200) и они "плотно" кидают исключения, наблюдается описанный эффект. Прикол в том, что под Линухом все ок, траблы только на Фряхе, причем на нескольких серверах с разными конфигурациями.
Код потоковой процедуры:
стек зависшей проги: (gdb) where #0 0x0000000801554636 in __fixunssfti () from /lib/libgcc_s.so.1 ]#1 0x00000008005c6343 in dl_iterate_phdr () from /libexec/ld-elf.so.1 #2 0x0000000801554bdf in _Unwind_Find_FDE () from /lib/libgcc_s.so.1 #3 0x0000000801551525 in _Unwind_GetIPInfo () from /lib/libgcc_s.so.1 #4 0x000000080155296e in _Unwind_RaiseException () from /lib/libgcc_s.so.1 #5 0x00000008012a2abd in __cxa_throw () from /usr/lib/libstdc++.so.6 Для генерации потоков использую boost 1.34-1.35 поверх libthr или libpthread. Это сообщение отредактировал(а) Shutdown - 26.8.2008, 21:26 |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
Shutdown,
вопрос в чем? -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| Shutdown |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.8.2008 Репутация: нет Всего: нет |
Когда долго мучаешься с проблемой, кажется, что она ясна сама собой |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 84 Всего: 207 |
попробуй новую libstdc++ поставить
-------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| aarrttzz |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 27.8.2008 Репутация: нет Всего: нет |
||||
|
||||
| Shutdown |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 26.8.2008 Репутация: нет Всего: нет |
Спасибо, буду патчить! Сколько ни пробовал искать, не видел этого багрепорта. Плохо искал, значит...
|
|||
|
||||
![]()
|
| Правила форума "С/С++: Программирование под Unix/Linux" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |