Skip to Main Content

Java APIs

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Seeking overall guidance with network program causing OS lockup

843790Nov 21 2007 — edited Jan 4 2008
To start with I do realize that the problem is at source an OS one and therefore unresovable directly by me but I looking for guidance (mainly this is a good idea or a waste of time) in trying to isolate the problem and come up with a workaround if neccessary.

The situation is this, I have a client and server Java program that has been running in a few places for about 18 months now. It's been running (both client and servers) on various Windows and Linux flavours during this time without incident (or at least incidents of this sort).

I have one client though that is running Vista on the box the server is running on. And sometimes something is causing this box to totally freeze. This behaviour can fairly consistently be reproduced by making a request for data that is "large" (more on this in a moment) when the client makes this request the server freezes. Not just the server program (or not at all really) but the actual OS. Dead. It has to be physically rebooted.

I have configured the sockets on both sides to use largish buffers (64K) and I have tried my best to follow the advice on various Socket performance, error handling and issue resolving present in Fundamental Networking in Java so I am fairly confident that while my program may have bugs there are no serious stupidities present in the networking side of it.

Part of me just feels this is just a bad OS but another part of me feels I wish I knew what the problem was and if it's worth pursuing/tracking down. It's very hard to trace what's going on because as I mentioned the OS just dies when it happens but even though I know it's an OS issue (because at the end of the day there isn't a way for me to kill an OS like this through Java networking.. right?) the client isn't so convinced and somewhat understandbly so.

So here are my options.

- try and do more tracing as best I can to see what data is being sent/recieved when it dies.
- make a test program to try and send data in amounts equal to the largest buffer size I use and see if I can get it to fail and where and at what point
- something else I don't know involving some sort of traffic monitoring tool
- stuff it. reintstall the OS and hope for the best.

Any advice would be greatly appreciated.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Feb 1 2008
Added on Nov 21 2007
6 comments
85 views