I have a process (JVM) on a Linux (RHEL) machine that is getting killed for no apparent reason. This has happened twice in the past couple of days. The JVM prints the following before it dies:

Service killed by signal 9

Which leads me to believe that something is killing it with SIGKILL (-9).

My initial thought was that this is the OOM killer, however I cannot find any evidence of the OOM killer doing anything in either /var/log/messages or dmesg (this is RHEL so I don't have syslog or kern.log). In addition the machine is using around 140GB for its buffer cache (out of 196GB), indicating that it has plenty of memory it could give to processes if they needed it.

I'm also reasonably sure that nobody is logging-in and killing this process manually.

Can anybody think of anything that would kill the process like this?

Alternatively can anyone think of a way to discover what is killing the process, if it happens again?

  • There are several process governors that can be implemented; I've seen this on several VPS servers where it auto-kills processes that are running too long or consuming too much memory. – Dataknife Apr 22 '15 at 21:52
  • 1
    The list of possible reasons for receiving that signal is likely very long. I happen to know that if a process uses Linux secure computing mode, then any attempt to use a system call which is not permitted will trigger a KILL signal. – kasperd Apr 23 '15 at 12:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.