Database disconnection caused server exiting abnormal

yangj yangj at
Fri Aug 13 10:48:01 CEST 2010

To:freeradius developers
We met a problem as the title said.
The entironment is:
*Solaris 10+Oracle 10g
*freeradius threads number is :100
*Database connection number is :120
We use LoadRunner to deal with the transction, With 300
transactions(authorize and accounting) per secound. the server was running
And then we disconnected the Freeradius Server and the Database server .
LoadRunner was still working. After 20 minutes later, the Freeradius Server
exit .
We searched with GDB.and found that:
(1)the source where caused the server exit:
  rcode = select(el->maxfd + 1, &read_fds, NULL, NULL, wake);
  if ((rcode < 0) && (errno != EINTR)) {  <--rcode = -1 .errno = 22
   el->dispatch = 0;
   return 0;
(2)At the same function:fr_event_loop()
Variable 'when.tv_usec' value is abnormal(ex:when.tv_usec=  ). And may cause
the above select() exit abnormal.
But I don't know why and when the when.tv_usec is set with the abnormal
Please help me to analyse the reason and How to fix the bug?
The attachment is the radius.log and the GDB log.

yangj at
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gdb.log
Type: application/octet-stream
Size: 620 bytes
Desc: not available
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: radius.log
Type: application/octet-stream
Size: 36829 bytes
Desc: not available
URL: <>

More information about the Freeradius-Devel mailing list