D.Davidov at webplus.ru
Wed Sep 24 09:04:51 UTC 2003
> Date: Tue, 23 Sep 2003 11:23:45 -0700
> From: Russ Allbery <rra at stanford.edu>
> To: inn-workers at isc.org
> Subject: Re: nnrpd core
> Dmitry Davidov <D.Davidov at webplus.ru> writes:
> > Sometime one of ~300 nrrpd process increases in memory up to a segment
> > limit and :
> > Core was generated by `nnrpd'.
> > Program terminated with signal 11, Segmentation fault.
> > Reading symbols from /usr/local/lib/libdb41.so.1...done.
> > Reading symbols from /usr/lib/libc.so.4...done.
> > Reading symbols from /usr/libexec/ld-elf.so.1...done.
> > #0 0x281c0208 in isatty () from /usr/lib/libc.so.4
> Hm, are you sure that this is a memory limit problem and not something
I think it happens when nnrpd close self on timeout but ovdb_server
already clear connection on this nnrpd, because nnrpd write to log
nnrpd[pid]: OVDB: cant write: broken pipe
#define CLIENT_TIMEOUT (innconf->clienttimeout + 60)
but it not corresponds to nnrpd network client timeout, because
nnrpd can serve connection thus not sending inquiries to ovdb_server,
and ovdb_server call delclient() earlier.
I set CLIENT_TIMEOUT to (innconf->clienttimeout + 1200) , thus
innconf->clienttimeout=1200 , total CLIENT_TIMEOUT=2400.
Result i have nnrpd core less often, but it not resolve problem and
i think here the algorithm is necessary like send message from nnrpd to
ovdb_server "I STILL ALIVE" and ovdb_server set timeout on it.
> Russ Allbery (rra at stanford.edu) <http://www.eyrie.org/~eagle/>
> Please send questions to the list rather than mailing me directly.
> <http://www.eyrie.org/~eagle/faqs/questions.html> explains why.
dmitry at wplus.net
Web Plus +7 812 326 90 20
More information about the inn-workers