[Raw Msg Headers][Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: router busylooping



On 18-Apr-00 at 13:56, Matti Aarnio (mea@nic.funet.fi) wrote:

> > I did some investigation of the routers busylooping case.
> > First, it happens with all router processes at once.
> > Second, restarting router always helps, and all mail gets
> > routed (I mean, there is no message that triggers it every time).
> > Third, it is busylooping in router/db.c inside the "for" loop
> > that starts at the line 785.
> 
>      Oh, it would mean that the LRU cache chain handling does some
>      mistake sometimes, and that is the cause of the trouble..
>      (In that loop.)
> 
>      Previously all pointers I had were rather weird Solaris LWP
>      threads, which the system should not be using at all..

They still are!  I can only wonder why?!  The information I just
posted was filtered out off multiple LWPs (three per process).
The most "realistic" of them has a pointer into db() function on
the top.  The thing happend 25 times in ~15 hours.

>      Now I know where to look into.

I also must admit that I *do* have a custom db lookup function, so
theoretically it might currupt the cache one way or another (and no,
I cannot run the thing without that custom function).  I modelled
it after hostname lookup function, it's quite simple: search only,
get a string, s=dupnstr(infostr,strlen(infostr)); return
newstring(s,strlen(s));

Anything I could do wrong here?

Eugene