Date: Thu, 08 Apr 2010 18:21:26 +0200 From: Alan DeKok <aland@deployingradius.com> Subject: Re: Radius server crash due to 35# bug To: FreeRadius developers mailing list <freeradius-devel@lists.freeradius.org> Message-ID: <4BBE0286.50509@deployingradius.com> Content-Type: text/plain; charset=ISO-8859-1
Liu Linyong wrote:
4K requests/sec. start_servers = 5 and max_servers = 32. But totally 9 threads were created.(That is: 3 more threads were created after initializing)
Oh, I've set max_requests = 102400 in radiusd.conf.
Hmm... I've tested it with sustained 30K packets/s for ~12 hours, and haven't seen an issue.
This seems to be a hard problem to reproduce.
Alan DeKok.
[V2-1-7] Maybe the test environments are different, so I can always reproduce the problem in an hour or so in my test ;) Yesterday, I removed the codes associated to 'hash' when receiving a request from NAS. That is: In main/event.c received_request(), will not find node from hash table, nor inserte into. BUT just add to FIFOs by thread_pool_addrequest(). Then test it for 12 hours, it work fine!! There may be something wrong with the 'hash' codes, I guess ;) Hmm... it's hard for me to understand the fr_hash_table_fixup(), then I think this 'black box' may have something wrong, haha... Besides, in src/main/event.c Ln1199, should "#ifdef WTH_COA " to be "#ifdef WITH_COA "? V2-1-8 also has this code.