worker process 7035 exited on signal 11 (core dumped)

Alexey Rymonin x-phoenix at mail.ru
Wed Aug 29 00:44:50 MSD 2007


Hello Igor,

Wednesday, August 29, 2007, 12:24:47 AM, you wrote:

IS> On Wed, Aug 29, 2007 at 12:05:49AM +0400, Alexey Rymonin wrote:

>> >> >> Current function is ngx_devpoll_process_events
>> >> >>   406           if (c->fd == -1) {
>> >> >> (dbx) gdb on                                                                 
>> >> >> (dbx) p events
>> >> >> events = 2
>> >> >> (dbx) p i     
>> >> >> i = 1
>> >> >> (dbx) p event_list[i]
>> >> >> event_list[i] = {
>> >> >>     fd      = 29
>> >> >>     events  = 1
>> >> >>     revents = 1
>> >> >> }
>> >> >> (dbx) p ngx_cycle->files[event_list[i].fd]
>> >> >> ngx_cycle->files[event_list[i].fd] = (nil)
>> >> 
>> >> IS> p n 
>> >> IS> p change_list[0]
>> >> IS> p change_list[1]
>> >> IS> p change_list[2]
>> >> 
>> >> (dbx) p n
>> >> n = 59821U
>> >> (dbx) p change_list[0]       
>> >> change_list[0] = {
>> >>     fd      = 28
>> >>     events  = 2048
>> >>     revents = 0
>> >> }
>> >> (dbx) p change_list[1]
>> >> change_list[1] = {
>> >>     fd      = 29
>> >>     events  = 2048
>> >>     revents = 0
>> >> }
>> >> (dbx) p change_list[2]
>> >> change_list[2] = {
>> >>     fd      = 26
>> >>     events  = 2048
>> >>     revents = 0
>> >> }
>>
>> Я ничего не могу сказать, для меня это темный лес.. единственное что на этот раз в корку упало
>> сразу 2 рабочих процесса с интервалом в 3 секунды
>> 
>> 2007/08/28 19:27:20 [alert] 846#0: worker process 19360 exited on signal 11 (core dumped)
>> 2007/08/28 19:27:23 [alert] 846#0: worker process 19358 exited on signal 11 (core dumped)

IS> Хорошо, посмотрим завтра на вторую.

К сожалению она не сохранилась... я машинально открыл через gdb (а он
на собранных cc бинарниках в кору падает) и его корка покрыла
нужную... :-(

>> А если можно описать в общем причину ошибки, то можно попробовать засунуть с баг лист
>> Сана, посмотрим что они ответят...

IS> Ошибка выглядит так:

IS> делаем POLLREMOVE для сокета,
IS> закрываем сокет,
IS> ioctl(DP_POLL) может вернуть события для этого сокета.

Я завтра им залью....

IS> Я правильно понимаю, что это Solaris 10 ?
Верно..
SunOS ... 5.10 Generic_125101-10 i86pc i386 i86pc

Nginx 0.6.8 был собран под 64-бита...

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

у меня есть 2 сервера на которых читстый update2 (SunOS ... 5.10 Generic_118855-14 i86pc
i386 i86pc) младше этой юзать не рекомендуют....
и чистый update3 (SunOS ... 5.10 Generic_118855-33 i86pc i386 i86pc)

Я могу поставить на них nginx и запустить стрес тест на всех трех
вресиях ядра... Сэмулировать нагрузку превышающую текущую, на мелких
файлах, тостых файлах, нот фаундах, форбиденах и больших клиенских
запросах (чтобы в буфер не влезал)... если эта ошибка ядра, то скорее всего рано или поздно
она повториться...

>> IS> А что показывают
>> 
>> IS> p change_list[3]
>> IS> p change_list[4]
>> IS> p change_list[5]
>> IS> p change_list[6]
>> IS> p change_list[7]
>> 
>> (dbx) p change_list[3]
>> change_list[3] = {
>>     fd      = 26
>>     events  = 1
>>     revents = 0
>> }
>> (dbx) p change_list[4]
>> change_list[4] = {
>>     fd      = 11
>>     events  = 2048
>>     revents = 0
>> }

IS> Похоже, больше 5 элементов не использовалось.

Это плохо?

>> (dbx) p change_list[5]
>> change_list[5] = {
>>     fd      = 0
>>     events  = 0
>>     revents = 0
>> }
>> (dbx) p change_list[6]
>> change_list[6] = {
>>     fd      = 0
>>     events  = 0
>>     revents = 0
>> }
>> (dbx) p change_list[7]
>> change_list[7] = {
>>     fd      = 7236416
>>     events  = 0
>>     revents = 0
>> }

IS> А что показывает

IS> p event_list[0]

(dbx) p event_list[0]
event_list[0] = {
    fd      = 28
    events  = 1
    revents = 1
}




-- 
Best regards,
 Alexey                            mailto:x-phoenix at mail.ru






More information about the nginx-ru mailing list