On 2 Jul 2015, at 11:01, srithar jeevadurai <srijeevadurai1@gmail.com> wrote:
Hi Arran,
Thanks a lot for your reply. Let me explain the actual scenario.
1) Radius server is sending request to an external process over tcp/ip socket for accounting (start/stop/interim) request. 2) Based on the external process response, radius (custom module) will reply to GGSN.
3) Some time if response is slow from external process then radius server is facing child hung error and we have to restart radius server for the same.
Ok, well that's an issue. You should probably add a socket timeout in your module, so the server doesn't think the request has hung. If all the workers are blocked in a system call, without sane timeouts no matter what else you change it's going to break the server, and require it to be restarted.
4) Since it is online system, we don;t want child hung happens actual intention is not to restart the system.
Fix your module.
5) I believe that it is happening may be due to radius process queue is filled with request and getting aged out.
Even if that's the case, it's a symptom of the real issue, which is your custom module. -Arran