Showing posts with label jvm. Show all posts
Showing posts with label jvm. Show all posts
Friday, October 21, 2011
Why am I seeing SIGSEGV when I strace a Java application on Linux?!
A customer recently used strace on a WebLogic server that was having some trouble. The first thing that jumped out at them was hundreds of SIGSEGV, also known as Segmentation Fault, events showed up in the output. They opened a support incident and asked for more information on what might be causing all of those segmentation faults.
Most people that have used Unix for any amount of time are familiar with occasionally seeing "Segmentation Fault (core dumped)" from poorly written programs. If that's all you knew about Unix and you looked at the output of strace on a Java process you'd think something was seriously wrong ("Wow, look at all these segfaults. Those guys at Sun/Oracle must be terrible programmers and they don't know what the hell they're doing!").
The real story is quite different - SIGSEGV in a Java process is almost always perfectly normal and completely safe.
Why?
Labels:
internals,
jvm,
nerdingout
Subscribe to:
Posts (Atom)
