Description
bin/activemq, line 485 reads:
local RET="`ps -o "pid,args" | grep "^\s*$activemq_pid\s.*java"`"
The problem is (from ps man page):
"By default, ps selects all processes with the same effective user
ID (euid=EUID) as the current user and associated with the same
terminal as the invoker."
Thus, the script essentially will ONLY find a running process
that has been started by the SAME LOGIN-SESSION.
I would say, that is rarely (if ever) the case in real-world scenarios.
For example, you login to your app-server and start ActiveMQ, then logout.
At a later point, you login again (new session) and try to stop ActiveMQ.
But unexpectedly, nothing happens
The fix was simple, in the line above, add the '-e' flag:
local RET="`ps -eo "pid,args" | grep "^\s*$activemq_pid\s.*java"`"
ps -e means it will list ALL processes on the host.
Then it works as expected.
Attachments
Issue Links
- duplicates
-
AMQ-8411 ActiveMQ does not stop if ACTIVEMQ_USER is set
- Resolved