kdufin, thar link did not work for me.
Quote:
Originally posted by agui
Upon further investigation using the ps command, we've found a rogue process that is wasting a great deal of system resources. Unfortunately, the rogue process is a database maintenance program and should be kiilled with caution.
Could I ask why is this process a "rogue"? How do you know is it "wasting" system resources? Couldn't it be simply "using" system resources?
You don't give us many details here. There is not a single answer that covers all cases. It would be particularly nice to know which resource or resources had been used by this process.
Since the report was "very slow", I'm going to guess that a several minute delay in fixing the slowness is acceptable. The first thing to do is figure out as much as you can. Do you have database people? Can they help? The UID, PPID, and TTY fields can often be used to figure out who started the program. If nothing else, you might contact the database vendor and ask for advice. One thing you want to know fairly quickly is if a core dump would be both possible and useful. That will influence which signal you will want to send to the program.
Can you be sure that you won't regret killing this process? If the process is simply performing too much I/O or something like that, you may have an interesting option: SIGSTOP. That signal can not be caught or ignored. And it will cause the process to stop executing. This can buy you time for a more permanent solution. And it can be used as a test to see if anything bad happens. If so, you can send a SIGCONT and the process will spring back to life.
If you decide to kill the process, you need to know if you need a coredump. It could be that a coredump would be vitally useful. Or it could be that a coredump would be useless and might even fill a filesystem. If you don't want a coredump, then SIGINTR, SIGTERM, and SIGHUP might be good choices. If you do want a coredump, then SIGQUIT, SIGSEGV, and SIGBUS might work. If one of those trios did not not work, I would fall back to SIGKILL. You can send any signal to a stopped process, no need to continue it first.