Всем привет!
Проблема воспроизводится только на виртуальных машинах (VMware ESX 4). Мы грешим на то, что на виртуалках тайминги не очень хорошо работают. Возможно, ntpd немножко откатил время назад и epoll'у приплохело, но останавливать его не вариант (т.к. гоняются кластерные тесты).
Пока писал - родилась идея, как проверить, виноват ntpd или нет: останавливать его перед остановкой нашего процесса и запускать снова на старте.
Может у кого еще какие мысли есть? Backtrace вот такой:
#0 0x0000003cb3ed3453 in __epoll_wait_nocancel () from /lib64/libc.so.6
#1 0x0000000000428573 in ngx_epoll_process_events (cycle=0x15541c10,
timer=100, flags=1) at src/event/modules/ngx_epoll_module.c:572
#2 0x0000000000420088 in ngx_process_events_and_timers (cycle=0x15541c10)
at src/event/ngx_event.c:245
#3 0x0000000000427013 in ngx_worker_process_cycle (cycle=0x15541c10,
data=<value optimized out>) at src/os/unix/ngx_process_cycle.c:819
#4 0x0000000000425777 in ngx_spawn_process (cycle=0x15541c10,
proc=0x426f28 <ngx_worker_process_cycle>, data=0x0,
name=0x6a9b79 worker