Master процесс nginx 0.6.38 съедает всю доступную память

Igor Sysoev is at rambler-co.ru
Mon Sep 14 13:08:17 MSD 2009


On Mon, Sep 14, 2009 at 01:32:48PM +0500, Одинцов Павел wrote:

> Добрый день!
> 
> Вот strace.
> 
> close(783)                              = 0
> close(784)                              = 0
> close(785)                              = 0
> close(786)                              = 0
> close(787)                              = 0
> close(788)                              = 0
> close(789)                              = 0
> close(790)                              = 0
> close(791)                              = 0
> close(792)                              = 0
> close(793)                              = 0
> close(794)                              = 0
> close(795)                              = 0
> close(796)                              = 0
> close(797)                              = 0
> close(798)                              = 0
> close(800)                              = 0
> close(801)                              = 0
> close(802)                              = 0
> close(1600)                             = 0
> close(1601)                             = 0
> close(1602)                             = 0
> close(1603)                             = 0
> close(1604)                             = 0
> close(1605)                             = 0
> socketpair(PF_FILE, SOCK_STREAM, 0, [9, 10]) = 0
> ioctl(9, FIONBIO, [1])                  = 0
> ioctl(10, FIONBIO, [1])                 = 0
> ioctl(9, FIOASYNC, [1])                 = 0
> fcntl(9, F_SETOWN, 16321)               = 0
> fcntl(9, F_SETFD, FD_CLOEXEC)           = 0
> fcntl(10, F_SETFD, FD_CLOEXEC)          = 0
> clone(child_stack=0,
> flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
> child_tidptr=0x2b2a7b0d5360) = 22337
> sendmsg(7, {msg_name(0)=NULL,
> msg_iov(1)=[{"\1\0\0\0\0\0\0\0AW\0\0\0\0\0\0\2\0\0\0\0\0\0\0\t\0\0\0\0\0\36!",
> 32}], msg_controllen=24, {cmsg_len=20, cmsg_level=SOL_SOCKET,
> cmsg_type=SCM_RIGHTS, {9}}, msg_flags=0}, 0) = 32
> sendmsg(3, {msg_name(0)=NULL,
> msg_iov(1)=[{"\1\0\0\0\0\0\0\0AW\0\0\0\0\0\0\2\0\0\0\0\0\0\0\t\0\0\0\0\0\36!",
> 32}], msg_controllen=24, {cmsg_len=20, cmsg_level=SOL_SOCKET,
> cmsg_type=SCM_RIGHTS, {9}}, msg_flags=0}, 0) = 32
> sendmsg(805, {msg_name(0)=NULL,
> msg_iov(1)=[{"\1\0\0\0\0\0\0\0AW\0\0\0\0\0\0\2\0\0\0\0\0\0\0\t\0\0\0\0\0\36!",
> 32}], msg_controllen=24, {cmsg_len=20, cmsg_level=SOL_SOCKET,
> cmsg_type=SCM_RIGHTS, {9}}, msg_flags=0}, 0) = 32
> sendmsg(3, {msg_name(0)=NULL,
> msg_iov(1)=[{"\3\0\0\0\0\0\0\0AW\0\0\0\0\0\0\2\0\0\0\0\0\0\0\377\377\377\377\0\0\36!",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGCHLD (Child exited) @ 0 (0) ---
> gettimeofday({1252914806, 264791}, NULL) = 0
> wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 9115
> wait4(-1, 0x7fff33ef85c4, WNOHANG, NULL) = 0
> rt_sigreturn(0xffffffffffffffff)        = -1 EINTR (Interrupted system call)
> gettimeofday({1252914806, 265065}, NULL) = 0
> close(805)                              = 0
> close(806)                              = 0
> sendmsg(7, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\233#\0\0\0\0\0\0\3\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> sendmsg(3, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\233#\0\0\0\0\0\0\3\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> sendmsg(9, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\233#\0\0\0\0\0\0\3\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGIO (I/O possible) @ 0 (0) ---
> gettimeofday({1252914806, 266093}, NULL) = 0
> rt_sigreturn(0x7fff33ef8560)            = -1 EINTR (Interrupted system call)
> gettimeofday({1252914806, 266197}, NULL) = 0
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGCHLD (Child exited) @ 0 (0) ---
> gettimeofday({1252914808, 891963}, NULL) = 0
> wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 22306
> wait4(-1, 0x7fff33ef85c4, WNOHANG, NULL) = 0
> rt_sigreturn(0xffffffffffffffff)        = -1 EINTR (Interrupted system call)
> gettimeofday({1252914808, 892239}, NULL) = 0
> close(3)                                = 0
> close(4)                                = 0
> sendmsg(7, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\"W\0\0\0\0\0\0\1\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> sendmsg(9, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\"W\0\0\0\0\0\0\1\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGIO (I/O possible) @ 0 (0) ---
> gettimeofday({1252914808, 892960}, NULL) = 0
> rt_sigreturn(0x7fff33ef8560)            = -1 EINTR (Interrupted system call)
> gettimeofday({1252914808, 893066}, NULL) = 0
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGCHLD (Child exited) @ 0 (0) ---
> gettimeofday({1252914825, 575495}, NULL) = 0
> wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 22288
> wait4(-1, 0x7fff33ef85c4, WNOHANG, NULL) = 0
> rt_sigreturn(0xffffffffffffffff)        = -1 EINTR (Interrupted system call)
> gettimeofday({1252914825, 575770}, NULL) = 0
> close(7)                                = 0
> close(8)                                = 0
> sendmsg(9, {msg_name(0)=NULL,
> msg_iov(1)=[{"\2\0\0\0\0\0\0\0\20W\0\0\0\0\0\0\0\0\0\0\0\0\0\0\377\377\377\377\0\0\0\0",
> 32}], msg_controllen=0, msg_flags=0}, 0) = 32
> rt_sigsuspend([])                       = ? ERESTARTNOHAND (To be restarted)
> --- SIGIO (I/O possible) @ 0 (0) ---
> gettimeofday({1252914825, 576096}, NULL) = 0
> rt_sigreturn(0x7fff33ef8560)            = -1 EINTR (Interrupted system call)
> gettimeofday({1252914825, 576201}, NULL) = 0
> rt_sigsuspend([] <unfinished ...>
> +++ killed by SIGKILL +++
> 
> а тут мы его уже сами ложим по killall -9, чтобы оживить систему.

Это strace с какого момента ? И где примерно по strace (если это можно
было отследить) начала расти память ? Вообще, здесь не видно ни одного
сисколла, который бы выделял память.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list